2010-02-09 183 views
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> 

回答

1

嘗試看看Expression Studio的。該套件中的一些應用程序能夠導入photoshop格式。

儘管在最糟糕的情況下,在Blend中手動創建這樣的圖像並不是什麼大問題。