WPF,这个触发器怎么写?

货郎大叔 2019-07-14 11:00:56

<Style TargetType="Control">
<Style.Triggers>
<MultiTrigger>//MultiTrigger触发器
<MultiTrigger.Conditions>
<Condition Property="IsFocused" Value="true"/>
<Condition Property="IsMouseOver" Value="true"/>
</MultiTrigger.Conditions>
<MultiTrigger.Setters>
<Setter Property="Foreground" Value="Yellow" />
</MultiTrigger.Setters>
</MultiTrigger>
</Style.Triggers>
</Style>

有一个Control样式,有一个触发器,当满足两个条件,一个是获取焦点,一个是鼠标悬停,字体色就变成黄色。
那现在需要IsMouseOver换成MouseRightButtonDown,也就是说一个是获取焦点,一个是鼠标右击控件,字体色就变成黄色。
那么这个触发器该怎写呢?
...全文
105 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
货郎大叔 2019-07-15
  • 打赏
  • 举报
回复
是啊,我这个问题的核心,就是如何解决属性触发器和事件触发器混写。满足两个条件,一个是属性触发器,一个事件触发器
exception92 2019-07-15
  • 打赏
  • 举报
回复
事件顺序:悬浮-》选中-》获取焦点,也就是在右击的情况下已经能够获取焦点了,焦点判断多余。除非使用的togglebutton,radiobutton之类的控件,满足属性IsChecked=true时就是获取焦点。有eventtrigger事件触发器,不过propertytrigger与eventtrigger貌似不可以混着写。
SDHU 2019-07-15
  • 打赏
  • 举报
回复
鼠标点下去肯定获取焦点了, 焦点判断不需要,直接用<EventTrigger RoutedEvent="MouseRightButtonDown"> 不就行了么?
货郎大叔 2019-07-15
  • 打赏
  • 举报
回复
有人知道吗?

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧