【发布时间】:2015-06-12 13:48:44
【问题描述】:
我为Button 中的TargetType 定义了一个简单的buttonStyle;但是将样式设置为按钮会产生异常。
<Window>
<Window.Resources>
<Style x:Key="buttonStyle" TargetType="{x:Type Button}">
<Setter Property="Background" Value="Magenta"/>
</Style>
</Window.Resources>
<StackPanel Orientation="Horizontal">
<Button Content="1" FocusVisualStyle="{StaticResource buttonStyle}"/>
</StackPanel>
</Window>
附加信息:“按钮”TargetType 与 元素“控制”。
此外,将TargetType 设置为Control 会消除运行时错误,但按钮的视觉样式在获得Focus 时不会改变。
样式设置为Button.Style时有效
编辑 我有两个具体问题:
我同意
FocusVisualStyle是FrameworkElement和FrameworkContentElement的属性这一事实,但是为什么在按钮上设置它会出错,尽管Style 是一个namedstyle 而不是 typedstyle ?为什么
FocusVisualStyle不会在Button上呈现?Button.FocusVisualStyle是否在内部被任何更高优先级的值(如模板、触发器或模板触发器)覆盖?
【问题讨论】: