UWP 突然缺少 TabView

TabView suddenly missing from UWP

昨天我试图在我的 UWP 项目中实现 TabView,但它没有出现在工具箱中,如果我通过代码添加它,它会显示

TabView is not supported in a Windows Universal Project.

尽管网站上的文档相当新且清晰:https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/tab-view

我将 UWP 要求放在最新的 Windows 10 版本上。 运行 Visual Studio 2019 企业。

感谢更多信息或帮助。

从这个document的TabView可以看出,TabView在Microsoft.UI.Xaml.Controls命名空间下,适用于WinUI。所以你需要安装 Microsoft.UI.Xaml nuget 包并将 Windows UI (WinUI) 主题资源添加到你的 App.xaml 资源。然后在xaml中添加命名空间即可使用

App.xaml:

<Application ...>
    <Application.Resources>
        <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
    </Application.Resources>
</Application>

MainPage.xaml:

<Page
    ......
    xmlns:control="using:Microsoft.UI.Xaml.Controls">

    <Grid>
        <control:TabView HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
            ......
        </control:TabView>
    </Grid>
</Page>

这很令人困惑,但是 (至少) 两个 TabView 可以在 UWP 应用程序中使用:

https://docs.microsoft.com/en-us/uwp/api/microsoft.ui.xaml.controls.tabview

xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
...
<muxc:TabView>

来自 windows 社区工具包

https://docs.microsoft.com/en-us/dotnet/api/microsoft.toolkit.uwp.ui.controls.tabview

xmlns:controls="using:Microsoft.Toolkit.Uwp.UI.Controls"
...
<controls:TabView >

他们看起来不一样。工具包版本更扁平,某些属性的命名和层次结构略有不同。

如果您不注意阅读的是哪个文档,您最终可能会得到代码,该代码是来自 类.

的属性层次结构的无效混杂。
默认情况下

TabView 突然丢失,因为 Microsoft 没有创建任何 TabView 项目。 TabViewWinUI 2.2 发布。然后你需要在Application上添加Microsoft.UI.Xaml.Controls,XMAL为muxc,C#为muxc。确保您的 WinUI 项目 2.2。 应用示例 XAML :-

<Application ...>
    <Application.Resources>
        <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
    </Application.Resources>
</Application>

和 XMAL :-

<Page ... xmlns:muxc="using:Microsoft.UI.Xaml.Controls" ...>

    <Grid>
         <muxc:TabView/>
    </Grid>
</Page>

和 C# :-

using muxc = Microsoft.UI.Xaml.Controls;

namspace {Your_Project}
{
    public sealed partical class {Your_Page} : Page
    {
         ...

         public {Your_Page}
         {
              this.InitializeComponent();
         }

         ...
    }
}

单击Here了解更多详情或信息