本文档已存档,并且将不进行维护。

ToolStrip 类

更新:2007 年 11 月

为 Windows 工具栏对象提供容器。

命名空间:  System.Windows.Forms
程序集:  System.Windows.Forms(在 System.Windows.Forms.dll 中)

[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
[ComVisibleAttribute(true)]
public class ToolStrip : ScrollableControl, IComponent, 
	IDisposable
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */
/** @attribute ComVisibleAttribute(true) */
public class ToolStrip extends ScrollableControl implements IComponent, 
	IDisposable
public class ToolStrip extends ScrollableControl implements IComponent, IDisposable

ToolStripMenuStripStatusStripContextMenuStrip 的基类。

在新的 Windows 窗体应用程序中可使用 ToolStrip 及其相关的类来创建工具栏,这些工具栏具有 Windows XP、Office、Internet Explorer 或自定义的外观和行为(它们均既可以使用主题又可以不使用主题,均支持溢出和在运行时对项重新排序)。ToolStrip 控件也提供丰富的设计时体验,包括就地激活和编辑、自定义布局以及共享指定的 ToolStripContainer 内的水平空间或垂直空间。

ToolStrip 类提供许多可管理绘制、鼠标和键盘输入以及拖放功能的成员。通过将 ToolStripRenderer 类与 ToolStripManager 类结合使用,可以对 Windows 窗体上所有 ToolStrip 控件的绘制样式和布局样式进行更多的控制和自定义。

下面各项专门设计用于与 ToolStripSystemRendererToolStripProfessionalRenderer 在所有方向上无缝地结合使用。默认情况下,它们在设计时可用于 ToolStrip 控件:

您可以在指定的 ToolStripContainer 内部联接 ToolStrip 控件,并将 ToolStrip 控件相互合并。对于多文档界面 (MDI) 应用程序,使用的是 ToolStripPanel,而不是 ToolStripContainer。通常,ToolStrip 不参与 Tab 键顺序,除非它是绝对定位的,而不是停靠在某个位置或位于 ToolStripPanel 中。

使用 ToolStripControlHost 类可以在 ToolStrip 中承载任何其他 Windows 窗体控件。

默认情况下,ToolStrip 是双缓冲的,并利用 OptimizedDoubleBuffer 设置。

虽然 ToolStrip 对以前版本的 ToolBar 控件的功能进行了替换和增补,但是考虑到向后兼容性和将来的使用(如果您选择),仍然保留了 ToolBar

下面的代码示例演示如何将 ToolStripContainerToolStrip 添加到 Windows 窗体,将项添加到 ToolStrip,并将 ToolStrip 添加到 ToolStripContainerTopToolStripPanel

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;


public class Form1 : Form
{
    private ToolStripContainer toolStripContainer1;
    private ToolStrip toolStrip1;

    public Form1()
    {
        InitializeComponent();
    }
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.Run(new Form1());
    }

    private void InitializeComponent()
    {
        toolStripContainer1 = new System.Windows.Forms.ToolStripContainer();
        toolStrip1 = new System.Windows.Forms.ToolStrip();
        // Add items to the ToolStrip.
        toolStrip1.Items.Add("One");
        toolStrip1.Items.Add("Two");
        toolStrip1.Items.Add("Three");
        // Add the ToolStrip to the top panel of the ToolStripContainer.
        toolStripContainer1.TopToolStripPanel.Controls.Add(toolStrip1);
        // Add the ToolStripContainer to the form.
        Controls.Add(toolStripContainer1);

    }
}


此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

.NET Framework

受以下版本支持:3.5、3.0、2.0
显示: