我正在使用ToggleButton控件。我有IsChecked和IsMouseOver属性的触发器,可以更改背景和前景色。如果选中ToggleButton,我不希望触发IsMouseOver触发器。这可能吗?
我目前触发ToggleButton:
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="Border" Property="Background" Value="{DynamicResource ControlSelectedBrush}"/>
<Setter TargetName="ToggleButtonText" Property="Foreground" Value="{DynamicResource ControlSelectedTextBrush}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ToggleButtonText" Property="Foreground" Value="{DynamicResource ControlHoverBrush}"/>
</Trigger>
</ControlTemplate.Triggers>
答案 0 :(得分:2)
使用MultiTrigger
并将其定义为附加条件。
即
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsChecked" Value="False" />
</MultiTrigger.Conditions>
<Setter TargetName="ToggleButtonText" Property="Foreground"
Value="{DynamicResource ControlHoverBrush}" />
</MultiTrigger>