2010-01-19 27 views
9

Estoy tratando de definir un DataTrigger para un elemento Image para que muestre una imagen conectada/desconectada. Sigo recibiendo un mensaje de Invalid PropertyDescriptor. ¿Algunas ideas?WPF Setting Image.Source from DataTrigger

<Image> 
    <Image.Style> 
     <Style> 
     <Style.Triggers> 
      <DataTrigger Binding="{Binding Source={x:Static my:Server.Instance}, Path=Connected, Mode=OneWay}" 
         Value="True"> 
      <Setter Property="Source" 
        Value="serverconnected.png"/> 
      </DataTrigger> 

     </Style.Triggers> 
     </Style> 
    </Image.Style> 
</Image> 

Respuesta

2

Añadir un BitmapImage a sus recursos, así:

<BitmapImage x:Key="serverConnected" UriSource="serverconnected.png" /> 

y cambiar su código existente para referirse a ella:

<Image> 
<Image.Style> 
    <Style> 
    <Style.Triggers> 
     <DataTrigger Binding="{Binding Source={x:Static my:Server.Instance}, Path=Connected, Mode=OneWay}" 
        Value="True"> 
     <Setter Property="Source" 
       Value="{StaticResource serverConnected}"/> 
     </DataTrigger> 

    </Style.Triggers> 
    </Style> 
</Image.Style> 

+0

Esta fue una buena sugerencia, pero no fue la solución al problema. +1 para la respuesta rápida! – Steve

8

acabo de cambiar la propiedad =" Fuente "a Property =" Image.Source "y está funcionando. Gracias a todos

+1

¡No olvides aceptar tu propia respuesta! =) –