ToolStrip 控件概述(Windows 窗体)

更新:2007 年 11 月

Windows 窗体 ToolStrip 控件及其关联类提供公共框架,用于将用户界面元素组合到工具栏、状态栏和菜单中。ToolStrip 控件提供丰富的设计时体验,包括就地激活和编辑、自定义布局、漂浮(即工具栏共享水平或垂直空间的功能)。

尽管 ToolStrip 替换了早期版本的控件并添加了功能,但是仍可以在需要时选择保留 ToolBar 以备向后兼容和将来使用。

ToolStrip 控件的功能

使用 ToolStrip 控件可以:

  • 在各容器之间显示公共用户界面。

  • 创建易于自定义的常用工具栏,让这些工具栏支持高级用户界面和布局功能,如停靠、漂浮、带文本和图像的按钮、下拉按钮和控件、“溢出”按钮和 ToolStrip 项的运行时重新排序。

  • 支持溢出和运行时项重新排序。如果 ToolStrip 没有足够空间显示界面项,溢出功能会将它们移到下拉菜单中。

  • 通过通用呈现模型支持操作系统的典型外观和行为。

  • 对所有容器和包含的项进行事件的一致性处理,处理方式与其他控件的事件相同。

  • 将项从一个 ToolStrip 拖到另一个 ToolStrip 内。

  • 使用 ToolStripDropDown 中的高级布局创建下拉控件及用户界面类型编辑器。

通过使用 ToolStripControlHost 类来使用 ToolStrip 中的其他控件,并为它们获取 ToolStrip 功能。

通过使用 ToolStripRendererToolStripProfessionalRendererToolStripManager 以及 ToolStripRenderMode 枚举和 ToolStripManagerRenderMode 枚举,可以扩展此功能并修改外观和行为。

ToolStrip 控件为高度可配置的、可扩展的控件,它提供了许多属性、方法和事件,可用来自定义外观和行为。以下为一些值得注意的成员:

重要的 ToolStrip 成员

名称

说明

Dock

获取或设置 ToolStrip 停靠在父容器的哪一边缘。

AllowItemReorder

获取或设置一个值,让该值指示拖放和项重新排序是否专门由 ToolStrip 类进行处理。

LayoutStyle

获取或设置一个值,让该值指示 ToolStrip 如何对其项进行布局。

Overflow

获取或设置是将 ToolStripItem 附加到 ToolStrip,附加到 ToolStripOverflowButton,还是让它在这两者之间浮动。

IsDropDown

获取一个值,该值指示单击 ToolStripItem 时,ToolStripItem 是否显示下拉列表中的其他项。

OverflowButton

获取 ToolStripItem,它是启用了溢出的 ToolStrip 的“溢出”按钮。

Renderer

获取或设置一个 ToolStripRenderer,用于自定义 ToolStrip 的外观和行为(外观)。

RenderMode

获取或设置要应用于 ToolStrip 的绘制样式。

RendererChanged

Renderer 属性更改时引发。

通过使用多个伴随类可以实现 ToolStrip 控件的灵活性。以下为一些最值得注意的伴随类:

重要的 ToolStrip 伴随类

名称

说明

MenuStrip

替换 MainMenu 类并添加功能。

StatusStrip

替换 StatusBar 类并添加功能。

ContextMenuStrip

替换 ContextMenu 类并添加功能。

ToolStripItem

抽象基类,它管理 ToolStripToolStripControlHostToolStripDropDown 可以包含的所有元素的事件和布局。

ToolStripContainer

提供一个容器,在该容器中窗体的每一侧均带有一个面板,面板中的控件可以按多种方式排列。

ToolStripRenderer

处理 ToolStrip 对象的绘制功能。

ToolStripProfessionalRenderer

提供 Microsoft Office 样式的外观。

ToolStripManager

控制 ToolStrip 呈现和漂浮,并控制 MenuStrip 对象、ToolStripDropDownMenu 对象和 ToolStripMenuItem 对象的合并。

ToolStripManagerRenderMode

指定应用于窗体中的多个 ToolStrip 对象的绘制样式(自定义、Windows XP 或 Microsoft Office Professional)。

ToolStripRenderMode

指定应用于窗体中的一个 ToolStrip 对象的绘制样式(自定义、Windows XP 或 Microsoft Office Professional)。

ToolStripControlHost

承载不是明确的 ToolStrip 控件、但您需要为其提供 ToolStrip 功能的其他控件。

ToolStripItemPlacement

指定是在主 ToolStrip 中对 ToolStripItem 进行布局,是在溢出 ToolStrip 中对它进行布局,还是都不进行布局。

有关更多信息,请参见 ToolStrip 技术摘要ToolStrip 控件结构

请参见

参考

ToolStrip

MenuStrip

ContextMenuStrip

StatusStrip

ToolStripItem

ToolStripDropDown