いくつかの例から、次のようなトリガーを組み合わせることが可能であることがわかりました。
<Trigger Property="IsMouseOver" Value="True">
この種のデータトリガーでは、
<DataTrigger Binding="{Binding IsHighlightable}" Value="True" />
MultiDataTrigger を次のように使用します。
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsMouseOver}" Value="True"/>
<Condition Binding="{Binding IsHighlightable}" Value="True" />
</MultiDataTrigger.Conditions>
<MultiDataTrigger.Setters>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="#BF6DBDD1"/>
<Setter Property="Background" Value="{StaticResource SelectedItemBackgroundBrush}"/>
</MultiDataTrigger.Setters>
</MultiDataTrigger>
ただし、これは添付プロパティでは機能しません。このトリガーは機能します:
<Trigger Property="UI:TreeViewHelper.IsMouseDirectlyOverItem" Value="True">
しかし、これは機能しません:
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=UI:TreeViewHelper.IsMouseDirectlyOverItem}" Value="True"/>
<Condition Binding="{Binding IsHighlightable}" Value="True" />
</MultiDataTrigger.Conditions>
<MultiDataTrigger.Setters>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="BorderBrush" Value="#BF6DBDD1"/>
<Setter Property="Background" Value="{StaticResource SelectedItemBackgroundBrush}"/>
</MultiDataTrigger.Setters>
</MultiDataTrigger>
MultiDataTrigger内でトリガーを正しく動作させる方法はありますか? IsMouseDirectlyOverItemプロパティはここから取得されましたhttp://blogs.msdn.com/b/mikehillberg/archive/2006/09/21/mytreeviewhelperismousedirectlyoveritem.aspx。
ありがとう
ベストアンサー1
の構文添付プロパティの場合は異なります:
Path=(UI:TreeViewHelper.IsMouseDirectlyOverItem)