BorderThickness不起作用

时间:2013-05-20 11:25:42

标签: wpf xaml button styles border

我正在尝试为XAML中的按钮创建样式,这是我的代码:

<Window.Resources>
  <Style x:Key="buttons"
         TargetType="Control">
    <Setter Property="Background">
      <Setter.Value>
        <LinearGradientBrush>
          <GradientStop Color="GoldenRod"
                        Offset="0" />
          <GradientStop Color="Gold"
                        Offset="0.10" />
          <GradientStop Color="White"
                        Offset="0.45" />
          <GradientStop Color="Gold"
                        Offset="0.9" />
          <GradientStop Color="GoldenRod"
                        Offset="1" />

        </LinearGradientBrush>
      </Setter.Value>
    </Setter>
    <Setter Property="FontFamily"
            Value="Consolas" />
    <Setter Property="FontSize"
            Value="15" />
    <Setter Property="FontWeight"
            Value="Bold" />
    <Setter Property="BorderThickness"
            Value="5" />
    <Setter Property="Padding"
            Value="0,0" />

  </Style>
</Window.Resources>

除了BorderThickness属性外,一切正常 - 无论我放在什么价值,它都不会改变。我想知道我的代码中缺少什么。

1 个答案:

答案 0 :(得分:5)

在此处查看Button控件默认模板。

http://msdn.microsoft.com/en-us/library/ms753328%28v=vs.90%29.aspx

如果我们看到BorderThickness属性已设置为固定值1.因此不会反映任何更改。

您需要为此目的创建一个新的ControlTemplate