在给使用者演示系统的时候,使用者提出了一个要求,能够使用Enter键切换,这样比较有效率。我就讲,使用Tab键也可以啊。他说,大多数人还是习惯使用Enter键来切换的。
好吧。用户至上,不过这也不是很困难的事情 。需要以下步骤:
1.需要设置窗体的KeyPreview属性为True。
2.处理窗体的KeyPress事件:
- private void FrmProductsEditor_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == (char)13)
- {
- this.SelectNextControl(this.ActiveControl, true, true, true, true);
- }
- }
其中,SelectNextControl方法的功能是激活下一个控件:其语法为:
public bool SelectNextControl(
Control ctl, //起始控件
bool forward, //如果为 true 则在 Tab 键顺序中前移;如果为 false 则在 Tab 键顺序中后移
bool tabStopOnly, //true 表示忽略 TabStop 属性设置为 false 的控件;false 表示不忽略。
bool nested, //是否搜索嵌套控件
bool wrap //在到达最后一个控件之后是否从 Tab 键顺序中第一个控件重新开始;
)
此外,还补一点:不能再设置窗体的AcceptButton属性了。
转载于:https://blog.51cto.com/bana520/870373