我有一个示例方法 OnKeyDownHandler:
private void OnKeyDownHandler(object sender, KeyEventArgs e)
{
if (e.Key == Key.Delete)
{
if (sender == listBox)
listItemDelete();
if (sender == dataGrid)
dataGridItemDelete();
}
}
我有一个DataGrid
和一个ListBox
。现在,当我按下并选择一个项目时,我想删除一个项目Delete-Key
。
现在我们经历以下几种情况:
我有一个SelectedItem
在我listBox
的和专注于它的。当我按下Deletey-Key
将OnKeyDownHandler-Event
被触发。
我有一个SelectedItem
在我dataGrid
的和专注于它的。当我按下 时Delete-Key
,OnkeyDownHandler-Event
不会触发。
当我按下任何其他键时Paste-Key
,将触发 OnKeyDownHandler-Event。
当我按下Delete-Key
我的dataGrid
. 这是为什么?我无法解释。
编辑:XAML 代码
<DataGrid KeyDown="OnKeyDownHandler" />
<ListBox KeyDown="OnKeyDownHandler" />