2010-01-19 122 views
9

我试图为Image元素定义DataTrigger,以便它显示连接/断开的图像。我不断收到一条Invalid PropertyDescriptor消息。有任何想法吗?来自DataTrigger的WPF设置Image.Source

<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> 

回答

2

添加的BitmapImage到你的资源,像这样:

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

并改变现有的代码来引用它:

<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

这是一个很好的建议,但不是解决问题的办法。 +1快速回复! – Steve 2010-01-19 18:18:58

8

我只是改变属性=”来源“属性=”Image.Source“,它的工作。谢谢大家

+1

不要忘记接受你自己的答案! =) – 2013-08-22 14:07:53