1

我想使用 Enter 键而不是 Space 键来检查复选框。

private void Form2_KeyDown(object sender, KeyEventArgs e)
        {
            CheckBox c1 = this.ActiveControl as CheckBox;
            if (e.KeyData == Keys.Enter && this.ActiveControl.Equals(c1))
                c1.Checked = true;
        }

如果我在复选框的 KyeUp 中编写此代码,我可以做到这一点,但问题是,我在表单中有几个复选框,我不能在它们的每个 KeyUp 下写这个,所以我需要在 KeyUp 下使用它形式..我需要改变什么?

4

2 回答 2

3

将表单的KeyPreview属性设置为 true。

或者,您可以遍历复选框(使用Controls属性,也许是递归的)并将相同的处理程序添加到每个复选框。

于 2010-02-01T20:38:09.927 回答
1

只需确定哪个控件具有焦点并根据需要选中/取消选中它。这个链接应该有帮助:http ://www.webdeveloper.com/forum/archive/index.php/t-36261.html

于 2010-02-01T20:39:01.690 回答