ToolStrip 控件概述(Windows 窗体)

Windows 窗体 ToolStrip 控件及其关联的类提供了一个通用框架,用于将用户界面元素合并到工具栏、状态栏和菜单。 ToolStrip 控件提供了丰富的设计时体验,包括就地激活和编辑、自定义布局和漂流,这是工具栏共享水平或垂直空间的能力。

尽管 ToolStrip 替换并增加了以前版本中控件的功能,但 ToolBar 为了后向兼容性和未来可能的使用仍然被保留。

ToolStrip 控件的特性

可以使用 ToolStrip 控件来:

  • 跨容器显示通用用户界面。

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

  • 支持溢出功能和运行时项目重新排序。 当没有足够的空间在一个 ToolStrip下拉菜单中显示项时,溢出功能会将项移动到下拉菜单中。

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

  • 以与处理其他控件的事件相同的方式一致地处理所有容器和包含的项的事件。

  • 将内容从一个 ToolStrip 拖动到另一个 ToolStrip或在一个 ToolStrip中移动。

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

使用 ToolStripControlHost 类在 ToolStrip 上使用其他控件,并为这些控件实现 ToolStrip 功能。

可以通过使用 ToolStripRendererToolStripProfessionalRendererToolStripManager 以及 ToolStripRenderModeToolStripManagerRenderMode 枚举来扩展功能并修改外观和行为。

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

重要 ToolStrip 成员

名称 DESCRIPTION
Dock 设置或获取 ToolStrip 停靠到父容器的哪个边缘。
AllowItemReorder 获取或设置一个值,该值指示拖放和项重新排序是否由 ToolStrip 类私下处理。
LayoutStyle 获取或设置一个值,该值指示 ToolStrip 如何布局其项。
Overflow 设置或获取ToolStripItem是附加到ToolStripToolStripOverflowButton,还是可以在两者之间浮动。
IsDropDown 获取一个值,该值指示在单击 ToolStripItem 时,ToolStripItem 是否显示其他项于下拉列表中。
OverflowButton 获取 ToolStrip 中用于溢出的溢出按钮 ToolStripItem
Renderer 获取或设置一个用于自定义外观和感觉(外观和行为)的 ToolStripRenderer 以应用于 ToolStrip
RenderMode 获取或设置要应用于 ToolStrip 的绘制样式。
RendererChanged 当属性Renderer更改时引发。

ToolStrip控件的灵活性是通过使用许多配套类实现的。 下面是一些最值得注意的:

重要 ToolStrip 配套类

名称 DESCRIPTION
MenuStrip 替换并添加类 MainMenu 的功能。
StatusStrip 替换并添加类 StatusBar 的功能。
ContextMenuStrip 替换并添加类 ContextMenu 的功能。
ToolStripItem 抽象基类,管理ToolStripToolStripControlHostToolStripDropDown可以包含的所有元素的事件和布局。
ToolStripContainer 在窗体的每一侧提供一个面板,控件可通过各种方式排列。
ToolStripRenderer 负责 ToolStrip 对象的绘制功能。
ToolStripProfessionalRenderer 提供Microsoft Office 样式的外观。
ToolStripManager 控制ToolStrip呈现和框架,以及MenuStripToolStripDropDownMenuToolStripMenuItem对象的合并。
ToolStripManagerRenderMode 指定应用于窗体中包含的多个 ToolStrip 对象的绘画样式(自定义、Windows XP 或 Microsoft Office Professional)。
ToolStripRenderMode 指定应用于窗体中包含的一个 ToolStrip 对象的绘画样式(自定义、Windows XP 或 Microsoft Office Professional)。
ToolStripControlHost 托管其他控件,这些控件不是专门的 ToolStrip 控件,但需要 ToolStrip 功能支持。
ToolStripItemPlacement 指定是否将 ToolStripItem 布局在主 ToolStrip、溢出 ToolStrip或都不布局。

有关详细信息,请参阅 ToolStrip 技术摘要ToolStrip 控制体系结构

另请参阅