查找仅在用户检查CheckBox时触发的事件

时间:2011-11-04 16:10:54

标签: .net winforms events checkbox

System.Windows.Forms.ComboBox有两个程序员可以处理的不同事件:

  • SelectionChangeCommitted - 仅在用户更改所选项目时触发事件
  • SelectedIndexChanged - 当选择以编程方式更改时,也会引发事件

System.Windows.Forms.CheckBox是否有类似内容?

澄清: 我正在寻找一个事件处理,当我通过调用CheckBox.Checked = true之类的语句以编程方式设置复选框时,不会触发该事件。

3 个答案:

答案 0 :(得分:4)

只需处理Click事件即可。只要单击一个复选框,就会切换它。

    private void checkBox1_Click(object sender, EventArgs e)
    {
        if (((CheckBox)sender).Checked)
        {
            // do stuff
        }
    }

答案 1 :(得分:2)

由于Control.focused仅在用户使用鼠标单击控件时才为真,因此只有在用户选中复选框时才能使用以下代码进行响应

private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
    if(checkBox1.Focused)
    {
        //do ur stuff here
    }
}

答案 2 :(得分:1)