如何在 uwp 中将键盘操作与 mytoolkit datagrid 集成
how to integrate keyboard actions with mytoolkit datagrid in uwp
我正在开发一个 uwp 应用程序。因为我在这里使用 https://github.com/MyToolkit/MyToolkit/wiki/DataGrid 中的数据网格。现在,我必须使用向上和向下箭头来使用键盘操作。
我使用了 KeyDown 事件和 selection_changed 事件来触发第一个项目,只有 keydown 事件被触发。然后 selection_changed 事件在按下向上和向下箭头键时触发。
但是我想在选择网格中的一行后按下回车键时执行一些操作。
我使用的代码是:`
private void dgsuggestion_KeyDown(object sender, KeyRoutedEventArgs e)
{
if (e.Key == Windows.System.VirtualKey.Enter)
{
}
}
private void dgsuggestion_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
ProductsList res= (ProductsList)((MyToolkit.Controls.DataGrid)sender).SelectedItem;
selectedsku = res;
}`
谁能帮帮我..
事件被系统或控件吸收,因此您必须使用 AddHandler
手动附加事件。
MyToolkit.Controls.DataGrid myGrid; // this is your grid
// Do this
myGrid.AddHandler(KeyDownEvent, new RoutedEventHandler(dgsuggestion_KeyDown), true);
// Not this
myGrid.KeyDown += dgsuggestion_KeyDown;
这里解释了它是如何工作的。
https://msdn.microsoft.com/en-us/library/ms598899(v=vs.110).aspx
我正在开发一个 uwp 应用程序。因为我在这里使用 https://github.com/MyToolkit/MyToolkit/wiki/DataGrid 中的数据网格。现在,我必须使用向上和向下箭头来使用键盘操作。
我使用了 KeyDown 事件和 selection_changed 事件来触发第一个项目,只有 keydown 事件被触发。然后 selection_changed 事件在按下向上和向下箭头键时触发。 但是我想在选择网格中的一行后按下回车键时执行一些操作。 我使用的代码是:`
private void dgsuggestion_KeyDown(object sender, KeyRoutedEventArgs e)
{
if (e.Key == Windows.System.VirtualKey.Enter)
{
}
}
private void dgsuggestion_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
ProductsList res= (ProductsList)((MyToolkit.Controls.DataGrid)sender).SelectedItem;
selectedsku = res;
}`
谁能帮帮我..
事件被系统或控件吸收,因此您必须使用 AddHandler
手动附加事件。
MyToolkit.Controls.DataGrid myGrid; // this is your grid
// Do this
myGrid.AddHandler(KeyDownEvent, new RoutedEventHandler(dgsuggestion_KeyDown), true);
// Not this
myGrid.KeyDown += dgsuggestion_KeyDown;
这里解释了它是如何工作的。
https://msdn.microsoft.com/en-us/library/ms598899(v=vs.110).aspx