【问题标题】:Styling in WPF is not being applied automaticallyWPF 中的样式不会自动应用
【发布时间】:2012-06-06 20:15:13
【问题描述】:

我有一个简单的样式,我正在尝试将其应用于我的应用程序中的所有按钮:

  <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:key,为什么样式不会自动应用于按钮,是否有人有任何想法?

【问题讨论】:

  • 也许更本地化的风格占了上风?
  • 我已将您的样式添加到新 WPF 项目中的应用程序资源中,并且该样式会自动应用于我的应用程序中的按钮。

标签: wpf styles


【解决方案1】:

一定是 VS2010 的故障。我添加了一个新页面,将样式放在 app.xaml 文件中,并将它们应用于新页面上的控件。打开旧页面,就像微软的魔法一样,样式开始应用。真是奇怪。

【讨论】:

    猜你喜欢
    • 2016-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2019-03-11
    • 1970-01-01
    相关资源
    最近更新 更多