C# · 12月 23, 2021

c# – 如何在UWP中设置TitleBar图标?

如何在UWP中将图标设置为TitleBar(Window)?

TitleBar图标示例:

解决方法 我们可以自定义标题栏来设置TitleBar Icon.这里的关键点是使用 Window.SetTitleBar method.以下是一个简单的示例:

首先,我们需要一个UIElement作为新的标题栏.例如,在MainPage.xaml中我们可以添加一个Grid,并在网格中设置图标和应用程序名称.请注意,我们需要将“TitleBar”网格放在根网格的第一行.

<Grid Background=”{ThemeResource ApplicationPageBackgroundThemeBrush}”> <Grid.RowDeFinitions> <RowDeFinition Height=”Auto” /> <RowDeFinition Height=”*” /> </Grid.RowDeFinitions> <Grid x:Name=”TitleBar”> <Rectangle x:Name=”BackgroundElement” Fill=”Transparent” /> <Grid> <Grid.ColumnDeFinitions> <ColumnDeFinition Width=”Auto” /> <ColumnDeFinition Width=”Auto” /> </Grid.ColumnDeFinitions> <Image Height=”32″ Margin=”5,0″ Source=”Assets/Storelogo.png” /> <TextBlock Grid.Column=”1″ VerticalAlignment=”Center” Text=”My Application” /> </Grid> </Grid></Grid>

然后在MainPage.xaml.cs中,我们可以使用以下代码来设置带有图标的新标题栏.

public MainPage(){ this.InitializeComponent(); CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true; // Set the BackgroundElement instead of the entire Titlebar grid // so that we can add clickable element in title bar. Window.Current.SetTitleBar(BackgroundElement);}

有关详细信息,请参阅GitHub上的官方Title bar sample,特别是方案2:示例中的自定义绘图.