我正在开发一个应用程序,以了解该工具的工作原理,我需要改变标题栏图标,但当我设置一个图标,它有一个白色背景,而不是透明的背景。
[当前标题栏]
我怎么能改变这一点呢??
我的代码如下所示:
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>
我想让我的图标的背景颜色与标题栏相同
1条答案
按热度按时间fwzugrvs1#
正如@ SimonMackay所说,确保你的来源使用透明度。WinUI3_CustomCaption示例工作正常。当然,它的来源使用透明度。参见https://github.com/castorix/WinUI3_CustomCaption/blob/f4e49d3885b64ea415649e1b2ac9990542e3c690/Assets/Butterfly.png