【mahapps.metro】使用如何添加WPF窗体图标

引言

用了一段的时间mahapps.metro,感觉还是很好用的,但是在设置窗体图标的时候出现了一点问题,下面说明一下遇到的问题以及如何解决。

内容

问题

mahapps.metro给出了如何添加图标的说明:

【mahapps.metro】使用如何添加WPF窗体图标_第1张图片

同样的,要先添加Resources/Icons.xaml,

在App.xaml文件中加入<ResourceDictionary Source="/Resources/Icons.xaml" /> 如图所示:

【mahapps.metro】使用如何添加WPF窗体图标_第2张图片

但是后面就出问题了,因为对xaml还是不是很熟悉,不知道添加到哪儿,又该如何添加。

<Rectangle>
        <Rectangle.Fill>
            <VisualBrush Visual="{StaticResource appbar_add}" />
        </Rectangle.Fill>
    </Rectangle>

刚开始把它添加到了

【mahapps.metro】使用如何添加WPF窗体图标_第3张图片

但是出了问题,提示特性名称错误,后来查了查如何添加窗体图标,看到一个问答:http://stackoverflow.com/questions/17508333/setting-window-icon-with-a-static-resource,刚好提到这个问题,并给出了答案。

解决

【mahapps.metro】使用如何添加WPF窗体图标_第4张图片

添加如下:

<Controls:MetroWindow.IconTemplate>
        <DataTemplate>
            <Grid Width="{TemplateBinding Width}" Height="{TemplateBinding Height}" Margin="4" Background="Transparent" RenderOptions.EdgeMode="Aliased" RenderOptions.BitmapScalingMode="HighQuality">
                <Rectangle>
                    <Rectangle.Fill>
                        <VisualBrush Visual="{StaticResource appbar_home}" />
                    </Rectangle.Fill>
                </Rectangle>
            </Grid>
        </DataTemplate>
    </Controls:MetroWindow.IconTemplate>

【mahapps.metro】使用如何添加WPF窗体图标_第5张图片

最后的效果如下,我添加了一个home图标:

【mahapps.metro】使用如何添加WPF窗体图标_第6张图片

小结

最后给大家分享一个Demo,比较详细,希望可以帮到大家。
https://github.com/MahApps/MahApps.Metro/blob/master/samples/MetroDemo/ExampleWindows/FlyoutDemo.xaml#L29-L43

【mahapps.metro】使用如何添加WPF窗体图标_第7张图片

你可能感兴趣的:(【mahapps.metro】使用如何添加WPF窗体图标)