在“WPF三态”复选框中捕获不确定状态

本文关键字:不确定 状态 复选框 WPF 三态 | 更新日期: 2023-09-27 17:59:22

因此,我在WPF应用程序中有一个简单的三态复选框:

<CheckBox Checked="CheckBox_Checked"
          Unchecked="CheckBox_Checked"
          IsThreeState="True" />

现在,我希望这个复选框在其状态更改时执行一些操作,这就是为什么我在视图中将CheckedUnchecked事件设置为相同的方法。由于这只是一个非常简单的例子,这就是我在这个方法中所做的全部:

    private void CheckBox_Checked(object sender, RoutedEventArgs e)
    {
        MessageBox.Show("Test");
    }

现在的问题是,当复选框被选中或取消选中时,这是有效的,但当它的值被更改为不确定状态时,什么都不会发生。很明显,我正在为CheckedUnchecked设置事件,但缺少不确定状态的一些事件。

当设置了不确定状态时,我需要使用什么事件才能采取行动?

在“WPF三态”复选框中捕获不确定状态

显然,要做到这一点,您需要使用Indeterminate事件,如下所示:

<CheckBox Checked="CheckBox_Checked"
          Unchecked="CheckBox_Checked"
          Indeterminate="CheckBox_Checked"
          IsThreeState="True" />