1

Role を TopLevelHeaderまたはTopLevelItem と IsPressed のいずれかにする必要があります。これは、2 つの MultiTrigger を指定しなくても可能ですか?

<MultiTrigger>

  <MultiTrigger.Conditions>

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

  </MultiTrigger.Conditions>

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

</MultiTrigger>

ティア

4

1 に答える 1

2

Charlie Robbins は、"or" 条件で MultiTrigger を使用する方法に関する記事を投稿しました。

MultiTrigger (および MultiDataTrigger) はどちらも、ConditionCollection タイプの「Conditions」というプロパティを持ちます。これらの ConditionCollections 内の各 Condition オブジェクトは、次の 2 つの方法のいずれかで使用できます。

  1. Property および Value プロパティを設定して、通常のプロパティ条件を設定できます。
  2. Binding プロパティと Value プロパティを設定して、データ条件を設定できます。

どちらの場合でも or 条件を達成したい場合は、実際に MultiDataTrigger を使用します。ここでの落とし穴は、Condition クラスの Binding プロパティを MultiValueConverter と組み合わせて使用​​して、目的の動作を取得できることです... 続きを読む

彼はサンプル ソリューションも投稿しました。

于 2009-12-14T19:16:36.303 に答える