.net 更改WinUI 3上的标题栏图标

q5iwbnjs  于 2023-10-21  发布在  .NET
关注(0)|答案(1)|浏览(240)

我正在开发一个应用程序,以了解该工具的工作原理,我需要改变标题栏图标,但当我设置一个图标,它有一个白色背景,而不是透明的背景。
[当前标题栏]

我怎么能改变这一点呢??
我的代码如下所示:
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>

我想让我的图标的背景颜色与标题栏相同

相关问题