UWP Groove 音乐标题栏

UWP Groove Music Title Bar

如何制作 TitleBar 喜欢的 Groove 音乐?它有一个带有应用程序名称的自动后退按钮。此外,它的 NavigationViewPane 被扩展为 TitleBar.

所以我首先补充说: Windows.ApplicationModel.Core.CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true;

然后使 NavigationView 的后退按钮可见。但是,这里提供了一个known issue with that. Basically, part of that back button is covered by something which makes it only clickable somewhere. Although a ,它似乎与AppViewBackButton兼容性不好(例如我只希望AppViewBackButton是蓝色的),我不能'让它发挥作用。

然后我尝试使用 SystemNavigationManager.GetForCurrentView().AppViewBackButton,但那个按钮似乎与 Groove Music 不一样,因为那个按钮与 NavigationView 中的按钮对齐得很好。我可以重新设计 NavigationViewStyle 以使其适合,但这需要大量工作(我如何获得 AppBackButton 的大小或如何自定义它?)。而且NavigationView的OpenPane有阴影但是我没找到原来的样式

有更好的方法吗?

UWP Groove Music Title Bar

UWP Groove Music app的后退按钮有两种,一种是NavigateView的BackButton,另一种是AppViewBackButton.

for example I only want the AppViewBackButton to be blue

您可以查看正在播放页面的后退按钮,AppViewBackButton背景颜色遵循系统设置。您可以通过在 Windows 颜色设置 .

中切换其他颜色来自定义它

更新

问题是按钮是可以点击的控件,如果调用SetTitleBar方法设置按钮为标题栏,按钮会失效。 请添加以下内容

CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true; 

并删除 NowPlayingFullPage 方法中的 Window.Current.SetTitleBar(EmptyTitleBar);

把我在NicoZhupost下的评论转成答案就可以了

要创建类似 Groove 音乐的标题栏,您需要对其进行自定义。并根据代码 here at the bottom.

修改你的代码

此外,如果您需要切换页面,最好将此添加到您将要切换的页面的 Page_Loaded 事件中,这样您的标题栏就可以拖动了:

Window.Current.SetTitleBar(AppTitleBar);