我的应用程序中有大约30个视图和相应的VM。我在大多数用户控件旁边都有一个HelpButton
,它提供了该字段用途的一些描述。当用户点击Button
时,会打开Popup
并提供说明。在所有视图中重用此功能的最佳方法是什么?
我为ControlTemplate
和帮助HelpButton
创建了Popup
,但我可以更进一步吗?感谢。
<Style x:Key="HelpButton" TargetType="{x:Type Button}" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Ellipse Focusable="True" Height="16" Width="16">
<Ellipse.Fill>
<ImageBrush ImageSource="../../Resources/Icons/Help.png" />
</Ellipse.Fill>
</Ellipse>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
答案 0 :(得分:1)
我发现自从提出这个问题以来已经有一段时间了,但我想我会回复以防其他人遇到这个问题而正在寻找解决方案。
将它放在可以从所有其他视图访问的单独的Resources.xaml中的ResourceDictionary中:
<ResourceDictionary xmlns...>
<Style x:Key="HelpButton" TargetType="{x:Type Button}" >
...
</Style>
</ResourceDictionary>
然后在您的xaml中使用资源部分(正如您之前所做的那样):
<UserControl xmlns...>
<UserControl.Resources>
<ResourceDictionary Source="Resources.xaml"/>
</UserControl.Resources>
<Button Style="{StaticResource HelpButton}" />
</UserControl>