J'ai récemment commencé à utiliser WPF pour développer mes applications. Maintenant j'en suis à un point où j'ai besoin de quelques conseils sur la bonne conception quand il s'agit de la gestion des combinaisons de touches.Bonne conception de gestion des clés
C'est ce que j'utilise au moment:
private void Grid_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (Keyboard.Modifiers == ModifierKeys.Control)
{
switch (e.Key)
{
case Key.Up: PreviousLine(); break;
case Key.Down: NextLine(); break;
case Key.Return: NextLine(); break;
}
}
else if (Keyboard.Modifiers == ModifierKeys.Shift)
{
switch (e.Key)
{
case Key.Return: PreviousLine(); break;
}
}
}
Comme vous pouvez l'imaginer, cela va commencer à être vraiment laid, très vite.
Avez-vous des suggestions qui pourraient améliorer le code?
Cela ne résoudra pas votre problème spécifique, mais peut empêcher des problèmes plus tard: vous ne devez définir 'e.Handled = true' que lorsque vous avez traité efficacement l'événement KeyDown. –
Ouais, je sais, c'était juste un test pour voir si ça marcherait. –