处理Toolstripcombobox中的Tab键
-
04-10-2019 - |
题
我在工具条中有一个woolstripcombobox,当我按其中的选项卡键时,它将重点放在下一个工具划线按钮上。我想改变这种行为,并将重点放在我的表格上的RichTextbox上。
问题是ToolStripCombobox没有PreviewKeydown事件。当在组合中按下选项卡键时,托管工具条工具栏的previewKeydown不会调用(仅在按下时,并且将某些ToolStripButton集中在聚焦时)。
工具条工具栏的tabstop是错误的。
有任何想法吗?
解决方案
您可以在工具条控件抓住钥匙之前以形式级别捕获。覆盖表单的ProcessCMDKey()方法,使其看起来与此相似:
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
if (keyData == Keys.Tab && this.ActiveControl == toolStripComboBox1.Control) {
richTextBox1.Focus();
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
不隶属于 StackOverflow