/ / Как да добавите икона от файл към MahApps.Metro WPF прозорец? - c #, wpf, xaml, mahapps.metro

Как да добавите икона от файл към MahApps.Metro WPF прозорец? - c #, wpf, xaml, mahapps.metro

MahApps.Metro "S документация има икона в горната лява част на лентата с инструменти. Това се нарича a Икона на прозореца, и аз имам проблеми с това, да работя.

Имам файл, наречен image.ico и аз го добавих като ресурс в VisualStudio 2013, като отиде Project -> myproject Properties... -> Resources Tab -> Add Existing File... -> Selecting image

Файлът сега е посочен като ресурс, наречен "изображение", като постоянството му е зададено на "Свързано при компилиране".

Опитах две различни тактики, за да го накарам да работи Icon и ShowIconOnTitleBar настроики.

Method1

<Controls:MetroWindow x:Class="myprogram.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
Title="MyProgram" Height="400" Width="800"
BorderThickness="2"
BorderBrush="{DynamicResource AccentColorBrush}"
SaveWindowPosition="True"
Icon="{StaticResource image}"
ShowIconOnTitleBar="True">

Това ми дава грешка за Icon опция. Аз вярвам, че или поставям Ресурса неправилно, или Иконата иска съвсем друго.

Вторият метод е все още да има ShowIconOnTitleBar="True", но задава всичко друго в един IconTemplate.

Method2

<Controls:MetroWindow x:Class="myprogram.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
Title="MyProgram" Height="400" Width="800"
BorderThickness="2"
BorderBrush="{DynamicResource AccentColorBrush}"
SaveWindowPosition="True"
ShowIconOnTitleBar="True">

<Controls:MetroWindow.IconTemplate>
<DataTemplate>
<Grid Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
Margin="4"
Background="Transparent"
RenderOptions.EdgeMode="Aliased"
RenderOptions.BitmapScalingMode="HighQuality">
<Image Source="{StaticResource image}"></Image>
</Grid>
</DataTemplate>
</Controls:MetroWindow.IconTemplate>

Това ми дава грешката "Ресурсът" изображението "не може да бъде решен".

Всяка помощ е оценена.

Отговори:

1 за отговор № 1

Щракнете с десния бутон върху вашия проект, Добави -> Съществуващ елемент ... и след това изберете желания ico файл.

Във вашия XAML задайте ico името на файла на Icon собственост по-долу:

<Controls:MetroWindow x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:Controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
xmlns:local="clr-namespace:WpfApplication1"
mc:Ignorable="d"
Icon="mahapps.metro.logo2.ico"
Background="LightGray"
Title="My Demo MetroWindow With Icon" Height="350" Width="525">
<Grid>

</Grid>

въведете описанието на изображението тук