2009-09-09 64 views
1

我创建了一个有很多按钮的WPF应用程序。Wpf ImageButtons?

现在客户想要将所有按钮更改为图标。 例如: 所有的确定按钮应该有相同的图标,所有取消btns等。

我希望把所有的按钮样式=“{StaticResource的ButtonStyle_OK}”,类型=“{StaticResource的ButtonStyle_OK}”等

现在的问题是,一般我有什么在这些样式的地方

<Style x:Key="ButtonStyle_OK" TargetType="Button"> 
    <!-- What comes here? -->     
</Style> 

我affraid我要在我的应用程序的所有按钮更改为图像,并使用MouseDown事件点击,会是这样傻?

注意: 我希望按钮是一个图像 - 不是一个包含图像的按钮(即我不想要原始的按钮框),谈论形状。 我想要这些按钮/样式可重复使用。

回答

2

就以造型来看看这个MSDN文章在 - http://msdn.microsoft.com/en-us/library/ms745683.aspx

我想你也许可以通过读取的ControlTemplate部分获得了一些牵引力。

此外,正如Chris所述,样式可以放入资源字典中,然后可以通过省略键全局应用于所有按钮。

更新:您不需要使用单击事件使用图像,使用ControlTemplate将允许您更精确地定义按钮的外观。

另一个例子 - http://mrpmorris.blogspot.com/2008/04/wpf-custom-button-templates.html

3

把它们放入一个资源字典,那么所有你需要做的就是换出词典更改样式和几乎任何与按钮的UI端等

我想你想要标签中的控件模板,如下所示:

<Setter TargetType="{x:Type Button}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type Button}"> 
      </ControlTemplate> 
     </Setter.Value> 
    <Setter Property="Template"> 
</Setter> 

您应该能够在线找到默认模板(MSDN)相对容易。 我会推荐使用混合来做到这一点(如果可以的话) - 它可以让事情变得更容易。