将 SolidColorBrush 的颜色绑定到按钮的背景色



我使用以下代码创建了一个自定义圆角按钮,但是颜色按钮不遵循按钮的背景属性,因此我必须为按钮的每种颜色创建新样式。

如何将纯色画笔颜色绑定到按钮背景颜色?

<Style x:Key="RoundedButton" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid>
<Rectangle RadiusX="6" RadiusY="6">
<Rectangle.Fill>
<SolidColorBrush Color="BUTTON BACKGROUND"/>
</Rectangle.Fill>
</Rectangle>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

按钮的背景已经是画笔了。无需创建另一个:

<ControlTemplate TargetType="Button">
<Grid>
<Rectangle RadiusX="6" RadiusY="6" Fill="{TemplateBinding Background}"/>
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>

您可能必须使用单向数据绑定

最新更新