我想在C#WPF中设计几个按钮。这些按钮应该都有不同的背景图像显示不同的图标。是否可以在所有按钮上设置相同的buttonstyle,然后指定每个独特的图标。这是我使用的样式:你可以使用相同的风格,但具有不同的背景
<Style TargetType="Button" x:Key="ButtonStyle">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid>
<Ellipse Fill="SlateGray"/>
<Ellipse Margin="2">
<Ellipse.Fill>
<ImageBrush ImageSource="..." Stretch="Fill"/> <!-- What should I write here? -->
</Ellipse.Fill>
</Ellipse>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
这是我在XAML创建按钮:
<Button Style="{StaticResource ButtonStyle}"/> //How do I specify a unique image?
<Button Style="{StaticResource ButtonStyle}"/>
我还可以从代码中创建这些按钮的背后是否有可能做到这一点那里。
如何使用相同的样式但使用不同的图像?
看到这里的参数化模板的一个例子:https://stackoverflow.com/questions/9232502/template-binding-with-attached-properties – ASh
如果可以指定每个按钮的整个'ImageBrush'而不仅仅是' ImageSource'路径,你可以使用'TemplateBinding'的'Button.Background'属性 – grek40