如何为UWP页面自定义应用程序标题栏

3
我正在尝试将UWP页面的应用程序标题栏始终设置为可见,并禁用恢复按钮,但我没有找到任何相关内容。我所能做的就是更改应用程序标题栏的颜色,代码如下:
    public MainPage()
    {
        this.InitializeComponent();
        ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.FullScreen;
        ApplicationView.GetForCurrentView().Title = "TEST";
        ApplicationViewTitleBar titleBar = ApplicationView.GetForCurrentView().TitleBar;
        titleBar.ForegroundColor = Color.FromArgb(1, 1, 1, 1);

    }

但那就是我能做的全部了... 自从我将应用程序标题栏设置为“TEST”后,标题的UI显示为“ProjectName-TEST”,这让我感到很奇怪。

所以,您知道如何自定义(设置应用程序栏标题,始终将其设置为可见,而不仅在用户将光标移动到页面顶部时才可见,并禁用恢复按钮(就像在Windows Forms中一样))UWP项目页面的应用程序标题栏吗?

1个回答

7

目前无法禁用任何标题栏按钮(最小化,最大化等)。在GitHub上有一些关于此问题的讨论可供参考。

除此限制外,您可以使用ExtendViewIntoTitleBarWindow.Current.SetTitleBar相结合来自定义标题栏。总的来说,这些方法允许您在标题栏中使用自定义XAML:

CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true;
...
Window.Current.SetTitleBar(myTitleBar);

在GitHub上有一个很好的资源(由Microsoft创建),展示了您可以自定义什么:标题栏示例

该示例展示了以下技术:

自定义标准系统标题栏中的颜色。

将视图扩展到标题栏中,以便您可以绘制自定义标题栏。

响应标题栏状态的更改。

在标题栏中绘制控件(仅限XAML)。

这里还有一些关于自定义标题栏的好教程:

轻松管理Windows 10应用程序中的标题栏

[UWP]掌控您的标题栏


2
这些文档太糟糕了。 - ikwillem

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接