如果两个文本框中的任何一个处于编辑模式,则禁用按钮
本文关键字:模式 编辑 按钮 于编辑 任何一 文本 两个 如果 | 更新日期: 2023-09-27 17:49:25
我正试图通过样式来做到这一点。但是所有的示例都与验证有关——如何绑定到"编辑模式"
<RibbonButton.Style>
<Style TargetType="RibbonButton">
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="Binding Path=(Validation.???EDIT MODE)"
</MultiDataTrigger.Conditions>
</MultiDataTrigger>
</Style.Triggers>
</Style>
</RibbonButton.Style>
如果通过编辑模式您的意思是TextBox
有焦点,您可以使用IsKeyboardFocusWithin
属性并在此属性为false时触发IsEnabled=True
对于TextBox
es
<StackPanel>
<TextBox x:Name="textBox1"/>
<TextBox x:Name="textBox2"/>
<RadioButton>
<RadioButton.Style>
<Style TargetType="{x:Type RadioButton}">
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=textBox1, Path=IsKeyboardFocusWithin}" Value="False"/>
<Condition Binding="{Binding ElementName=textBox2, Path=IsKeyboardFocusWithin}" Value="False"/>
</MultiDataTrigger.Conditions>
<Setter Property="IsEnabled" Value="True"/>
</MultiDataTrigger>
</Style.Triggers>
</Style>
</RadioButton.Style>
</RadioButton>
</StackPanel>