检查绑定属性是否存在

时间:2011-07-12 14:14:13

标签: wpf data-binding datatrigger

我的情况是有一个共同的控件,在应用程序中使用了几个地方。

现在,我在一个属性上的数据触发器说A.即

DataTrigger Binding = {Binding A} .......

现在可能在视图模型中不存在属性A,在这种情况下,我需要添加另一个基于属性B的触发器(存在于该ViewModel中)。

类似的东西:

Multidatatrigger

DataTrigger Binding A - doesn't exist
DataTrigger Binding B  

做点什么......

有人可以建议我应该如何接近这一点。 。好像我试图这样做,然后将抛出绑定异常,因为A在当前视图模型中不存在。或者任何其他方法在这里工作...... 感谢

1 个答案:

答案 0 :(得分:8)

您可以使用PriorityBinding

<DataTrigger Value="XXX">
  <DataTrigger.Binding>
     <PriorityBinding>
        <Binding Path="A"/>
        <Binding Path="B"/>
     </PriorityBinding>
  </DataTrigger.Binding>
  <Setter ...
</DataTrigger>