2009-10-01 11 views
32

Üzerine geldiğimde bir resmi nasıl değiştirebilirim?WPF'de vurgulu bir resmi nasıl değiştirebilirim?

var bugüne kadar tek şey: Tetikleyiciler yalnızca

kullanılabilir
<Image> 
    <Image.Style> 
    <Style TargetType="{x:Type Image}"> 
     <Setter Property="Source" Value="C:\Image1.jpg"/> 
     <Style.Triggers> 
     <Trigger Property="IsMouseOver" Value="True"> 
      <Setter Property="Source" Value="C:\Image2.jpg"/> 
     </Trigger> 
     </Style.Triggers> 
    </Style> 
    </Image.Style> 
</Image> 

Not olun:

<Image Height="32" Source="/images/Save32.png" /> 

cevap

68

Sen Görüntü Kaynağını değiştirmek için IsMouseOver özellikte bir tetikleyici kullanmak gerekir Stil içinde ve bir Tetikleyicinin bir özelliği değiştirmesi için, mülkün değerinin Stil tarafından ayarlanması ve öğeye açıkça ayarlanmaması gerekir.

+2

Tetikleyicilerin yalnızca Stiller içinde kullanılabildiğini ve bir Tetikleyicinin bir özelliği değiştirebilmesi için, Mülkün değerinin Stil tarafından ayarlanması ve öğeye açıkça ayarlanmaması için bir özelliği değiştirmesi gerektiğini unutmayın. - Bu sadece birkaç sorun çıkardı QUITE açık teşekkürler! –

8
<Image Stretch="Fill" > 
     <Image.Style> 
      <Style> 
       <Setter Property="Image.Source" Value="original.png" /> 
       <Style.Triggers> 
        <Trigger Property="Image.IsMouseOver" Value="True"> 
         <Setter Property="Image.Source" Value="mouseover.png" /> 
        </Trigger> 
       </Style.Triggers> 
      </Style> 
     </Image.Style> 
</Image> 

Tetiklenmenin başka yolları da vardır. Tamam?