1
我刚刚实现了这些ToggleButtons使用ControlTemplates设置图像内容根据IsChecked声明。这些图像是在Photoshop中制作的,但我希望它们作为WPF向量。如何将这些图像切换按钮转换为向量切换按钮?
的按钮看起来像这些的时候器isChecked =假:
alt text http://i46.tinypic.com/2q3rsaw.jpg
当=器isChecked真我只是用另一个PNG替换图片:
alt text http://i50.tinypic.com/2lu868l.jpg
我设计photoshop中的按钮图像。它们具有以下的图像层:
- 半透明状
- 半透明线分割线(有两个圆角的边缘按钮的正方形)
- 图标
- 文本
- 为半透明梯度玻璃反射效应
我意识到这不是最灵活的设计,我会老鼠她的矢量形式有相同的按钮,但我不知道如何去做。
下面是来自按钮(随时提出关于如何落实按钮以及其他替代品)之一的XAML:
<ControlTemplate x:Key="ResetButtonTemplate" TargetType="{x:Type ToggleButton}">
<Image x:Name="ImageReset" Source="images\button_reset_gray.png"/>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Cursor" Value="Hand" />
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="ImageReset" Property="Source" Value="images\button_reset_red.png"/>
<Setter Property="IsEnabled" Value="False" />
<Setter Property="Cursor" Value="Arrow" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
<StackPanel Orientation="Horizontal" Margin="20">
<ToggleButton Name="buttonRun" Width="102" Height="102" Template="{StaticResource RunButtonTemplate}" Checked="buttonRun_Checked" />
<ToggleButton Name="buttonPause" Width="102" Height="102" Template="{StaticResource PauseButtonTemplate}" Checked="buttonPause_Checked" />
<ToggleButton Name="buttonReset" Width="102" Height="102" Template="{StaticResource ResetButtonTemplate}" Checked="buttonReset_Checked" />
</StackPanel>