xaml:有多种方法可以在多个触发器中实现OR逻辑吗?

时间:2009-12-14 18:47:01

标签: xaml role multitrigger

我希望Role可以是TopLevelHeader OR TopLevelItem以及IsPressed。如果没有指定两个MultiTriggers,这可能吗?

<MultiTrigger>

  <MultiTrigger.Conditions>

  <!--  IsPressed   -->
  <Condition Property="IsPressed" Value="True"/>
  <Condition Property="Role" Value="TopLevelHeader"/>

  </MultiTrigger.Conditions>

    <Setter TargetName="Border" Property="Background" .../>

</MultiTrigger>

TIA

1 个答案:

答案 0 :(得分:2)

Charlie Robbins发表了一篇关于How to use a MultiTrigger with an "or" condition的文章:

  

MultiTrigger(和MultiDataTrigger)   两者都有一个叫做的财产   '条件'的类型   ConditionCollection。每个条件   这些内容   ConditionCollections可用于   两种方式之一:

     
      
  1. 您可以设置属性和值属性以设置普通   财产状况。
  2.   
  3. 您可以设置Binding和Value属性以设置数据条件。
  4.         

    现在,如果你想完成一个或   在任何一种情况下你都会有条件   实际上使用MultiDataTrigger。该   这里有我们可以使用的   条件的绑定属性   与...一起上课   MultiValueConverter获得所需   行为...... read more

他也发布了sample solution