C# UserControl keyData 仅在 windows 表单中先按下按钮后才有效
C# UserControl keyData Only working after pressing a button first in windows forms
单击按钮后,按钮工作正常。
问题: 当第一次加载 UserControl 并且我没有按其中的任何按钮时,Keydata 不工作。
手动单击按钮后,键绑定会按预期工作。所以很明显我想让用户在按下任何按钮之前使用键绑定:
(我已经尝试将焦点设置在不同的元素上,例如按钮本身)
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData)
{
case Keys.Enter:
button1.PerformClick();
return true;
case Keys.Escape:
button2.PerformClick();
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
我想让用户在按下任何按钮之前使用键数据:
Just Focused 用户控件,来自主窗体按钮
private void label1_Click(object sender, EventArgs e)
{
usercontrol11.BringToFront();
usercontrol11.Focus();
}
单击按钮后,按钮工作正常。
问题: 当第一次加载 UserControl 并且我没有按其中的任何按钮时,Keydata 不工作。 手动单击按钮后,键绑定会按预期工作。所以很明显我想让用户在按下任何按钮之前使用键绑定: (我已经尝试将焦点设置在不同的元素上,例如按钮本身)
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData)
{
case Keys.Enter:
button1.PerformClick();
return true;
case Keys.Escape:
button2.PerformClick();
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
我想让用户在按下任何按钮之前使用键数据:
Just Focused 用户控件,来自主窗体按钮
private void label1_Click(object sender, EventArgs e)
{
usercontrol11.BringToFront();
usercontrol11.Focus();
}