C#赢得选项卡控件上的窗体按钮快捷键

本文关键字:窗体 按钮 快捷键 控件 选项 | 更新日期: 2023-09-27 18:24:52

我有下面的代码,在其中我在Main窗体上添加了一个选项卡控件。在选项卡中我包含了另一个窗体。现在我必须为包含的表单实现快捷键(保存按钮如ctrl+s)。有人能建议我代码吗。。

switch ((sender as TabControl).SelectedIndex)
{
case 0:
       frmVTaskOrderResources.Close();
break;
case 1:
 frmVTaskOrderResources = new TaskResource(frmTaskOrders.tempTOID,    frmTaskOrders.tempStartDt, frmTaskOrders.tempEndDt);
 frmVTaskOrderResources.TopLevel = false;
 frmVTaskOrderResources.Visible = true;
 frmVTaskOrderResources.FormBorderStyle = FormBorderStyle.None;
 frmVTaskOrderResources.Dock = DockStyle.Fill;
 tabControl1.TabPages[1].Controls.Add(frmVTaskOrderResources);
break;
}

如果我在表单中包含以下代码,它会工作,但不会在选项卡控件中?

protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
  if (keyData == (Keys.Control | Keys.F)) {
    MessageBox.Show("What the Ctrl+F?");
    return true;
  }
  return base.ProcessCmdKey(ref msg, keyData);
}

C#赢得选项卡控件上的窗体按钮快捷键

您需要使用全局热键。

这里有一个展示它是如何做到的:使用C#设置全局热键