通过选择相应的选项卡,TabControl 会在分离的页面上显示内容。TabControl 起到管理 TabItem 对象集合的容器作用。 每个 TabItem 选项卡都表示可单击的选项卡标题及其关联的内容页。
重要概念
TabControl 和 TabItem 控件协同工作以创建选项卡式界面:
- TabControl:充当管理选项卡选择、布局和演示文稿的容器。 它处理用户交互,例如单击选项卡并显示当前所选选项卡的内容。
- TabItem:表示 TabControl 中的单个选项卡。 每个 TabItem 都包含标题(可见选项卡文本或内容)和内容(选择选项卡时显示的内容)。
- 关系:TabControl 的 Items 集合包含 TabItem 对象。 选择 TabItem 时,TabControl 将显示该项的内容,并更新视觉状态以显示哪个选项卡处于活动状态。
有关各个选项卡的详细信息,请参阅 TabItem。
样式和模板
本部分介绍控件的 TabControl 样式和模板。 可以修改默认值 ControlTemplate ,使控件具有唯一的外观。 有关详细信息,请参阅 “样式和模板”概述 和 为控件创建模板。
Content 属性
TabControl将Items属性用作其内容属性。 此属性包含表示各个选项卡及其关联内容的对象的集合 TabItem 。 将 TabItem 对象添加到此集合时,它们显示为 TabControl 接口中的可选选项卡。
部件
下表列出了控件的 TabControl 命名部件。
| 部件 | 类型 | Description |
|---|---|---|
| PART_SelectedContentHost | ContentPresenter | 显示当前所选 TabItem内容的对象。 |
在为ControlTemplate创建TabControl时,你的模板可能包含在ItemsPresenter中的ScrollViewer。 (显示 ItemsPresenter 控件中的每个 TabControl项; ScrollViewer 启用滚动)。 如果ItemsPresenter不是ScrollViewer的直接子级,则必须将ItemsPresenter命名为ItemsPresenter。
视觉状态
下表列出了控件的 TabControl 视觉状态。
| VisualState 名称 | VisualStateGroup 名称 | Description |
|---|---|---|
| Normal | CommonStates | 默认状态。 |
| Disabled | CommonStates | 控件已禁用。 |
| 有效 | ValidationStates | 该控件使用 Validation 类, Validation.HasError 附加属性为 false. |
| 无效焦点 | ValidationStates | 附加属性Validation.HasError指示控件true是否具有焦点。 |
| 无效未聚焦 | ValidationStates |
Validation.HasError附加属性true表示控件未获得焦点。 |