我最近将MahApps的Metro主题添加到了我的wpf应用程序中,但是现在我窗口左上角的应用程序图标设置为制表位,我不想要它。我已经遍布整个互联网寻求解决方案,但无济于事。
使用Snoop我发现Icon是一个名为" PART_Icon"的ContentControl。但据我所知,没有办法获取它的属性。
我已经考虑过从MahApps.Metro源代码中获取一个分支并更改属性然后创建一个新的.dll,但我宁愿找到一个参与度较低的解决方案。
思想?
答案 0 :(得分:2)
我明白了。没有必要分叉源。我还有一些其他问题与Metro主题搞乱控件,所以我只是在资源字典中手动设置他们的样式。只需将此代码添加到“ResourceDictionary”标记内的Application xaml中。
<Style TargetType="ContentControl">
<Setter Property="IsTabStop" Value="False"/>
</Style>
焦点也会切换到“FlyoutsControl”,所以我将IsTabStop设置为False:
<Style TargetType="controls:FlyoutsControl">
<Setter Property="IsTabStop" Value="False"/>
</Style>
最后,为了便于参考,我们遇到了一个问题,即文本框的MinWidth和MinHeight被设置得太大了,所以这就是你设置它们的方法:
<Style TargetType="TextBox">
<Setter Property="MinWidth" Value="0" />
<Setter Property="MinHeight" Value="0" />
</Style>
要记住的一件事是,这将为这些类型的所有控件设置这些值,因此您需要确保在其他任何地方都不会弄乱您。你去吧!祝你好运!