提问人:Pedro Augusto 提问时间:9/25/2023 最后编辑:Brian RasmussenPedro Augusto 更新时间:10/5/2023 访问量:96
更改 WinUI 3 上的标题栏图标
Change Titlebar icon on WinUI 3
问:
我正在开发一个应用程序来了解该工具的工作原理,我需要更改标题栏图标,但是当我设置图标时,它具有白色背景而不是透明背景。
我该如何改变这一点??
我的代码如下所示:
MainWindow.xaml.cs:
public MainWindow()
{
this.InitializeComponent();
var buttonThickness = new Thickness();
var listThickness = new Thickness();
var emptyTasksBlockTextThickness = new Thickness();
emptyTasksBlockTextThickness.Top = 12;
buttonThickness.Left = 16;
listThickness.Top = 12;
myButton.Margin = buttonThickness;
tasks.Margin = listThickness;
emptyTasksBlockText.Margin = emptyTasksBlockTextThickness;
this.AppWindow.TitleBar.BackgroundColor = Windows.UI.Color.FromArgb(0, 31, 41, 55);
this.AppWindow.TitleBar.ButtonBackgroundColor = Windows.UI.Color.FromArgb(0, 31, 41, 55);
// this.AppWindow.TitleBar.ForegroundColor = Windows.UI.Color.FromArgb(0, 31, 41, 55);
this.AppWindow.Title = "ToDo Application";
this.Activated += MainWindow_Activated;
}
private void MainWindow_Activated(object sender, Microsoft.UI.Xaml.WindowActivatedEventArgs args)
{
string icon = Path.Combine(
Package.Current.InstalledLocation.Path,
"Icon.ico"
);
this.AppWindow.SetIcon(icon);
}
MainWindow.xaml:
<?xml version="1.0" encoding="utf-8"?>
<Window
x:Class="videodownloader.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:videodownloader"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<StackPanel Orientation="Vertical" HorizontalAlignment="Center" VerticalAlignment="Center">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Bottom">
<TextBox
x:Name="textInput"
Width="500"
KeyDown="TextBlock_KeyDown"
PlaceholderText="Type your task here"
Header="Enter with task"
/>
<local:CustomButton
PointerEntered="myButton_PointerEntered"
PointerExited="myButton_PointerExited"
x:Name="myButton"
VerticalAlignment="Bottom"
Click="myButton_Click"
FontFamily="Segoe UI"
FontWeight="SemiBold"
CornerRadius="4"
>
Add Task
</local:CustomButton>
</StackPanel>
<TextBlock x:Name="emptyTasksBlockText" HorizontalAlignment="Center">Nenhuma tarefa adicionada ainda!</TextBlock>
<ListView x:Name="tasks" ItemsSource="{x:Bind ItemResource}">
<ListView.ItemTemplate>
<DataTemplate x:DataType="local:TaskItem">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<TextBlock Text="{x:Bind name, Mode=OneTime}" VerticalAlignment="Center" HorizontalAlignment="Left" />
<Button Click="removeItem_Click" HorizontalAlignment="Right" DataContext="{Binding name}">Remover</Button>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackPanel>
</Window>
我想使图标的背景与标题栏的颜色相同
答:
0赞
YangXiaoPo-MSFT
#1
正如@SimonMourier所说,确保您的来源使用透明度。WinUI3_CustomCaption示例工作正常。当然,它的来源使用透明度。查看 https://github.com/castorix/WinUI3_CustomCaption/blob/f4e49d3885b64ea415649e1b2ac9990542e3c690/Assets/Butterfly.png
下一个:ICO,转移资金
评论