2
我最近開始使用WPF開發我的應用程序。現在我已經到了一個關鍵點組合處理需要關於良好設計的一些技巧。良好的密鑰處理設計
這是我使用的那一刻是什麼:
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;
}
}
}
正如你可以想像,這將開始得到非常難看,真快。
你有什麼提示可以改善代碼嗎?
這不會解決您的具體問題,但可能會在以後避免問題:只有當您有效地處理了KeyDown事件時,才應設置「e.Handled = true」。 – 2010-02-04 20:36:01
是的,我知道,這只是一個測試,看它是否會起作用。 – 2010-02-04 20:36:31