2013-07-31 24 views
11

XAML'deki bir değere göre görüntüyü nasıl görüntüleyebilirim?XAML'deki değere göre görüntüyü görüntüleme

ben "Cinsiyet" denilen numaralandırma türünde bir özelliği vardır benim Model sınıfının en cinsiyet numaralandırma

[DataContract(Name = "Gender")] 
public enum GenderEnum 
{ 
    [EnumMember] NotSpecified, 
    [EnumMember] Male, 
    [EnumMember] Female, 
} 

var. Şimdi XAML tarafı üzerinden "Cinsiyet" değerine dayalı bir görüntü göstermek istiyorum.

+1

? Sonra bir tetikleyici kullanabilirsiniz. –

cevap

19

XAML: Bir DataTemplate İçinde

<Image Tag="{Binding Gender}" Width="48" Height="48"> 
     <Image.Style> 
     <Style TargetType="Image"> 
      <Style.Triggers> 
       <DataTrigger Binding="{Binding Gender}" Value="Male"> 
        <Setter Property="Source" Value="/Resources/Client_Male.png"/> 
       </DataTrigger > 
       <DataTrigger Binding="{Binding Gender}" Value="Female"> 
        <Setter Property="Source" Value="/Resources/Client_Female.png"/> 
       </DataTrigger > 
      </Style.Triggers> 
     </Style> 
     </Image.Style> 
    </Image> 
+0

Bu normalden daha temiz bir çözümdür "bir dönüştürücü bla bla bla yaratmak zorundasınız", teşekkürler! – Monsignor

+0

Görüntünün 'Tag' özelliği içinde belirtilen bağlama '' içerisindeki tüm DataTrigger bağlantıları '' Tag', yani Binding =" {Binding Path = Tag, RelativeSource = {RelativeSource Self}} " – zmechanic

İlgili konular