如何解决隐藏复选框,直到将鼠标悬停在WPF上,并保持选中状态
在我将鼠标悬停在所需的位置之前,该复选框是不可见的,但是现在我希望它在选中后保持可见状态。我曾尝试实现多重触发,但似乎不起作用:
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox Name="cbkSelect"
IsChecked="{Binding Path=IsSelectedForOrder,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}">
<CheckBox.Style>
<Style targettype="{x:Type CheckBox}">
<Setter Property="Visibility" Value="Hidden"/>
<Style.Triggers>
<multidatatrigger>
<multidatatrigger.Conditions>
<Condition Binding="{Binding IsMouSEOver,RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}" Value="True"></Condition>
<Condition Binding="{Binding IsChecked,RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}" Value="True"></Condition>
</multidatatrigger.Conditions>
<multidatatrigger.Setters>
<Setter Property="Visibility" Value="Visible"/>
</multidatatrigger.Setters>
</multidatatrigger>
</Style.Triggers>
</Style>
</CheckBox.Style>
</CheckBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
解决方法
MultiDataTrigger
仅在满足所有条件时应用设置器。
代表一个触发器,当绑定数据满足一组条件时,该触发器将应用属性值或执行操作。
除此之外,绑定到DataGridRow
无效,因为它没有IsChecked
属性。而是添加一个对关联的IsChecked
的{{1}}属性起作用的Trigger
。
CheckBox
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。