TabView 类

定义

可以通过 TabView 控件显示一组选项卡及其相应的内容。 选项卡控件可用于显示多个页面 (或文档) 内容,同时为用户提供重新排列、打开或关闭新选项卡的功能。

这是正确的控件吗?

使用 TabView 帮助用户在同一窗口中管理多个应用页面或文档。

不要使用 TabView 显示用户无法重新排列、打开或关闭的一组静态选项卡。 请改用 Top) 的 NavigationView (NavigationViewPaneDisplayMode

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
class TabView : Control
/// [Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Version(1)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="TabItems")]
class TabView : Control
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="TabItems")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.XamlContract, 65536)]
class TabView : Control
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Version(1)]
public class TabView : Control
[Microsoft.UI.Xaml.CustomAttributes.MUXContractProperty(version=0)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Version(1)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="TabItems")]
public class TabView : Control
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="TabItems")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.XamlContract), 65536)]
public class TabView : Control
Public Class TabView
Inherits Control
继承
TabView
属性

示例

提示

有关详细信息、设计指南和代码示例,请参阅 选项卡视图

WinUI 2 库应用包括大多数 WinUI 2 控件、特性和功能的交互式示例。 通过 Microsoft Store 获取应用,或在 GitHub 上获取源代码。

基本 TabView 示例,类似于 Web 浏览器

<TabView AddTabButtonClick="Tabs_AddTabButtonClick"
         TabCloseRequested="Tabs_TabCloseRequested" />
// Add a new Tab to the TabView
private void Tabs_AddTabButtonClick(TabView sender, TabViewAddTabButtonClickEventArgs e)
{
    var newTab = new TabViewItem();
    newTab.IconSource = new SymbolIconSource() { Symbol = Symbol.Document };
    newTab.Header = "New Document";

    // The Content of a TabViewItem is often a frame which hosts a page.
    Frame frame = new Frame();
    newTab.Content = frame;
    frame.Navigate(typeof(BaconIpsumPage));

    sender.TabItems.Add(newTab);
}

// Remove the requested tab from the TabView
private void Tabs_TabCloseRequested(TabView sender, TabViewTabCloseRequestedEventArgs args)
{
    sender.TabItems.Remove(args.Tab);
}

注解

控件样式和模板

可以修改默认 的 StyleControlTemplate ,使控件具有唯一的外观。 有关修改控件的样式和模板的信息,请参阅 XAML 样式。 文件中包括 generic.xaml 定义控件外观的默认样式、模板和资源。 出于设计目的, generic.xaml 随 WinUI (Microsoft.UI.Xaml) NuGet 包一起安装。 默认情况下,此位置是 \Users\<username>\.nuget\packages\microsoft.ui.xaml\<version>\lib\uap10.0\Microsoft.UI.Xaml\Themes\generic.xaml。 来自不同版本的 WinUI 的样式和资源可能具有不同的值。

XAML 还包括可用于在不修改控件模板的情况下修改不同视觉状态中的控件颜色的资源。 修改这些资源是首选设置属性,如 BackgroundForeground。 有关详细信息,请参阅 XAML 样式一文的轻量级样式部分。

构造函数

TabView()

初始化 TabView 类的新实例。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

属性

AddTabButtonCommand

获取或设置在点击“添加 (+) ”按钮时要调用的命令。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

AddTabButtonCommandParameter

获取或设置要传递给 AddTabButtonCommand 属性的参数。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

AddTabButtonCommandParameterProperty

标识 AddTabButtonCommandParameter 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

AddTabButtonCommandProperty

标识 AddButtonCommand 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

AllowDropTabs

获取或设置一个值,该值确定 TabView 是否可以作为拖放操作的放置目标。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

AllowDropTabsProperty

标识 AllowDropTabs 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CanDragTabs

获取或设置一个值,该值指示是否可以将选项卡拖动为数据有效负载。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CanDragTabsProperty

标识 CanDragTabs 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CanReorderTabs

获取或设置一个值,该值指示是否可以通过用户交互重新排序 TabStrip 中的选项卡。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CanReorderTabsProperty

标识 CanReorderTabs 依赖属性。

标识 CanReorderTabs 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CloseButtonOverlayMode

获取或设置一个值,该值指示选项卡内关闭按钮的行为。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

CloseButtonOverlayModeProperty

标识 CloseButtonOverlayMode 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

IsAddTabButtonVisible

获取或设置添加 (+) 选项卡按钮是否可见。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

IsAddTabButtonVisibleProperty

标识 IsAddTabButtonVisible 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

SelectedIndex

获取或设置所选项的索引。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

SelectedIndexProperty

标识 SelectedIndex 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

SelectedItem

获取或设置选定项。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

SelectedItemProperty

标识 SelectedItem 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItems

获取用于在 控件中生成选项卡的集合。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemsProperty

标识 TabItems 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemsSource

获取或设置用于在 TabView 中生成选项卡的对象源。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemsSourceProperty

标识 TabItemsSource 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemTemplate

获取或设置用于显示每个项的 DataTemplate。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemTemplateProperty

标识 TabItemTemplate 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemTemplateSelector

获取或设置一个选择对象,该对象根据在运行时处理有关内容项或其容器的信息,将 DataTemplate 更改为适用于内容。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemTemplateSelectorProperty

标识 TabItemTemplateSelector 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabStripFooter

获取或设置选项卡带右侧显示的内容。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabStripFooterProperty

标识 TabStripFooter 依赖属性。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabStripFooterTemplate

获取或设置用于显示 TabStripFooter 内容的 DataTemplate。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabStripFooterTemplateProperty

标识 TabStripFooterTemplate 依赖属性。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabStripHeader

获取或设置显示在选项卡条带左侧的内容。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabStripHeaderProperty

标识 TabStripHeader 依赖属性。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabStripHeaderTemplate

获取或设置用于显示 TabStripHeader 内容的 DataTemplate。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabStripHeaderTemplateProperty

标识 TabStripHeaderTemplate 依赖属性。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabWidthMode

获取或设置选项卡的大小。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

TabWidthModeProperty

标识 TabWidthMode 依赖属性。

本文档适用于Windows 应用 SDK中适用于 UWP 的 WinUI 2 (,请参阅Windows 应用 SDK命名空间)

方法

ContainerFromIndex(Int32)

返回集合中指定索引处项的容器。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

ContainerFromItem(Object)

返回与指定项对应的容器。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

事件

AddTabButtonClick

单击“添加 (+) ”选项卡按钮时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

SelectionChanged

在当前所选选项卡更改时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabCloseRequested

当用户尝试通过单击 x-to-close 按钮、Ctrl+F4 或鼠标轮关闭 Tab 时引发。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabDragCompleted

当用户完成拖动操作时引发。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabDragStarting

在启动拖动操作时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabDroppedOutside

当用户通过在 TabStrip 区域外放置选项卡完成拖放操作时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabItemsChanged

当项集合发生更改时引发。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabStripDragOver

当输入系统报告包含 TabStrip 作为潜在拖放目标的基础拖动事件时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

TabStripDrop

当输入系统报告包含 TabStrip 作为放置目标的基础放置事件时发生。

本文档适用于Windows 应用 SDK中的 WinUI 2 for UWP (for WinUI,请参阅Windows 应用 SDK命名空间) 。

适用于

另请参阅