当在WinForms设计器中工作时,您可以单击子控件来选择它。然后按Esc键时,所选内容向上移动到父控件。如果您再次按Esc键,下一个父控件将被选中,直到最终到达表单本身。
我有一个带有各种子控件的用户控件,并已将其配置为设计时支持。当我单击允许的子控件时,它被选中。当我按Esc键,但是什么也没有发生。如何在设计时捕获Esc键并将所选内容向上移动到父控件?
我不确定这是否有效,但您可以尝试以下内容:
用按键事件注册表单:
this.KeyPress += new KeyPressEventHandler(frm_Main_KeyPress);
如果按了转义键,获取活动控件的父控件并选中它。
void tc_Main_KeyPress(object sender, KeyPressEventArgs e)
{
if e.KeyChar = (char)27{
this.ActiveControl.Parent.Select();
}
希望这对你有帮助!