2013-02-24 44 views
3

我正在爲按鈕出現在自定義的方式enter image description here新的按鈕風格的影像不顯示

的想法是寫在標籤屬性中的圖片來源,並在內容屬性中的文本樣式

因此,風格是這樣的

<Style x:Key="NormalButtonStyle" TargetType="Button"> 
    <Setter Property="Background" Value="Black"/> 
    <Setter Property="Foreground" Value="White"/> 
    <Setter Property="Padding" Value="12,4,12,4"/> 
    <Setter Property="HorizontalAlignment" Value="Left"/> 
    <Setter Property="VerticalAlignment" Value="Center"/> 
    <Setter Property="FontWeight" Value="SemiBold"/> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="Button"> 
       <Grid Background="{TemplateBinding Background}"> 
        <Grid.ColumnDefinitions> 
         <ColumnDefinition Width="Auto"/> 
         <ColumnDefinition Width="*"/> 
        </Grid.ColumnDefinitions> 
        <Image Source="{TemplateBinding Tag}" Height="{TemplateBinding Height}" Width="{TemplateBinding Height}"/> 
        <ContentPresenter x:Name="ContentPresenter" Grid.Column="1" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> 
       </Grid> 
       <ControlTemplate.Triggers> 
        <Trigger Property="IsMouseOver" Value="true"> 
         <Setter Property="Foreground" Value="Red" /> 
        </Trigger> 

        <Trigger Property="IsPressed" Value="true"> 

         <Setter Property="Foreground" Value="Gray"/> 

        </Trigger> 

       </ControlTemplate.Triggers> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

圖片不顯示,只有文本apears

我把這樣的按鈕,在主窗口

<Button Style="{DynamicResource NormalButtonStyle}" Tag="/iPARK;component/Resources/Sign%20out_icon.png" HorizontalAlignment="Right" Margin="20" Click="Signout_Click"/> 

如果我設置在樣式文件中的圖像直接像這樣的話,就說明,但話,就無法爲其他圖像

<Image Source="/iPARK;component/Resources/Sign%20out_icon.png" Height="{TemplateBinding Height}" Width="{TemplateBinding Height}"/> 

回答

1

被重用當您將圖像URI放入Tag屬性中時,它不會自動轉換爲ImageSource(因爲它是爲Image.Source屬性完成的)。你需要做的是明確的:

<Button ...> 
    <Button.Tag> 
     <BitmapImage UriSource="/iPARK;component/Resources/Sign%20out_icon.png"/> 
    </Button.Tag> 
</Button> 
+0

我的標籤改成你說的格式和風格改變了和做的伎倆,謝謝 – 2013-02-24 12:07:04