MainMenuButton
タイプのカスタムボタンがあり、UserControl
それをスタイリングしています。MultiTrigger
ここで、2 つの条件が満たされた場合にのみボタンの外観を変更するを実装したいと考えました。
最初の条件は ifIsMouseOver == true
です。私は単に次を入れますCondition
:
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True"/>
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<Setter TargetName="LayoutRoot" Property="Background" Value="Red">
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<Setter TargetName="LayoutRoot" Property="Background" Value="Black">
</MultiTrigger.ExitActions>
</MultiTrigger>
2 番目の条件は、次のことに関連していDependencyProperty
ます。
public static readonly DependencyProperty IsCheckedProperty = DependencyProperty.Register("IsChecked", typeof(bool), typeof(MainMenuButton), new PropertyMetadata(false));
別のSO 投稿で、ユーザーはDataTrigger
に反応するために使用できると言いましたIsCheckedProperty
。だから私は他の投稿からコードを試しましたが、うまくいきませんでした:
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True"/>
<Condition Binding="{Binding RelativeSource={RelativeSource Mode=Self}, Path=IsChecked}" Value="False"/>
</MultiTrigger.Conditions>
<MultiTrigger.EnterActions>
<BeginStoryboard Storyboard="{StaticResource MouseEnter}"/>
</MultiTrigger.EnterActions>
<MultiTrigger.ExitActions>
<BeginStoryboard Storyboard="{StaticResource MouseLeave}"/>
</MultiTrigger.ExitActions>
</MultiTrigger>
これはどのように解決できますか?回答ありがとうございます。:)