假设某个窗体中包含了下列组件:
- 列表框
- BarManager, 在其中包含了用于删除列表框中的取得焦点的项的 Del bar item。 它的快捷键被设置为 DELETE 键。
- 一个文本框。 在文本框中编辑时,按下 DELETE 键应该清除选中的文本。
在默认情况下,当任何一个控件获得焦点时,按下 DELETE 键始终都将调用 Del bar item 的功能。 当文本框获得焦点时要阻止这种情况发生,我们需要接管 BarManager.ShortcutItemClick 事件。
C# | 复制代码 |
---|---|
private void barManager1_ShortcutItemClick(object sender, DevExpress.XtraBars.ShortcutItemClickEventArgs e) { if(e.Shortcut.Key == Keys.Delete) e.Cancel = textBox1.Focused; } |
Visual Basic | 复制代码 |
---|---|
Private Sub BarManager1_ShortcutItemClick(ByVal sender As Object, _ ByVal e As DevExpress.XtraBars.ShortcutItemClickEventArgs) _ Handles BarManager1.ShortcutItemClick If e.Shortcut.Key = Keys.Delete Then e.Cancel = TextBox1.Focused End Sub |