具有 Fluent Design 系统的标题栏 - UWP App

Title Bar with Fluent Design System - UWP App

我正在使用 Fluent Design System 开发一个新的 UWP 应用程序,我希望我的背景使用 Acrylic material 我正在使用 <Grid Background="{ThemeResource SystemControlBaseHighAcrylicWindowBrush}"> 我还想要我的 UWP 的标题栏应用程序是透明的(使用 Fluent Design System),我正在使用它:

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

但是最小化、最大化、关闭按钮没有变透明,为什么?

我希望我的应用程序的标题栏与 Windows 10 计算器相同!

您可以使用 ApplicationViewTitleBar class 的属性来做到这一点:

 var view = ApplicationView.GetForCurrentView();

 // active
 view.TitleBar.BackgroundColor = Color.FromArgb(255, 8, 87, 180);
 view.TitleBar.ForegroundColor = Colors.White;

 // inactive  
 view.TitleBar.InactiveBackgroundColor = Color.FromArgb(255, 8, 87, 180);
 view.TitleBar.InactiveForegroundColor = Colors.Black;

 // button
 view.TitleBar.ButtonBackgroundColor = Color.FromArgb(255, 8, 87, 180);
 view.TitleBar.ButtonForegroundColor = Colors.White;

 view.TitleBar.ButtonHoverBackgroundColor = Colors.Blue;
 view.TitleBar.ButtonHoverForegroundColor = Colors.White;

 view.TitleBar.ButtonPressedBackgroundColor = Colors.Blue;
 view.TitleBar.ButtonPressedForegroundColor = Colors.White;

 view.TitleBar.ButtonInactiveBackgroundColor = Colors.DarkGray;
 view.TitleBar.ButtonInactiveForegroundColor = Colors.Gray;

文档参考:

  1. ApplicationViewTitleBar Class
  2. Title bar customization