我有一个简单的风格,我试图应用于我的应用程序中的所有按钮:
<LinearGradientBrush x:Key="ButtonBackgroundBrush">
<GradientStop Color="Yellow" Offset="0" />
<GradientStop Color="Red" Offset="1" />
</LinearGradientBrush>
<SolidColorBrush Color="Purple" x:Key="ButtonForegroundBrush" />
<SolidColorBrush Color="LimeGreen" x:Key="ButtonBorderBrush" />
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="{StaticResource ButtonBackgroundBrush}" />
<Setter Property="Foreground" Value="{StaticResource ButtonForegroundBrush}" />
<Setter Property="BorderBrush" Value="{StaticResource ButtonBorderBrush}" />
</Style>
我的app.xaml文件中有这个,所以我的应用程序中的所有内容都可以使用它。如果我在页面上放置一个按钮,则样式不适用。如果我在样式中添加“x:key”,然后将该样式名称添加到按钮,则会应用样式。因此,我知道样式写得正确并且在按钮的范围内。有没有人有任何想法,为什么风格不会自动应用于按钮,因为它应该从样式中取消x:键?
答案 0 :(得分:0)
一定是VS2010的故障。我添加了一个新页面,将样式放在app.xaml文件中,然后将它们应用到新页面上的控件。打开旧页面,好像通过Microsoft魔术,样式开始应用。真奇怪。