Die Lösung hängt von der Ansicht und die UI-Steuerelemente, die es enthält.
Grundsätzlich hat ein UI Control die KeyDown und KeyUp Ereignisse, zu denen Sie die Taste, die auf der Tastatur gedrückt/freigegeben wurde, abonnieren und steuern können.
Sie müssen sich auf die Ansicht Spur des fokussierten Objekt zu halten, wie je nachdem, welche es hat, kann der Event-Handler nicht aufgerufen werden:
standardmäßig das erste fokussierbare Element in der visuellen Struktur ist gegeben Fokus durch das System. Ein einzelnes Steuerelement erhält den Fokus, wenn der Benutzer direkt auf das Steuerelement im Layout klickt oder tippt oder den Tab verwendet, um in eine Tabulatorfolge innerhalb des Inhaltsbereichs zu wechseln. Sie können auch programmgesteuert den Fokus auf die Steuerung setzen, indem Sie Control.Focus aufrufen.
So zum Beispiel auf das KeyDown-Ereignis des Fensters registrieren:
XAML
<Window x:Class="WpfApplication25.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
KeyDown="Window_KeyDown">
</Window>
CS
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_KeyDown(object sender, KeyEventArgs e)
{
// ... Test for F5 key.
if (e.Key == Key.F5)
{
this.Title = "You pressed F5";
}
}
}
http://stackoverflow.com/a/16996731/17034 –
Mögliches Duplikat von [PreviewKeyDo wn für Windows Store App ListBox] (http://stackoverflow.com/questions/16651616/previewkeydown-for-windows-store-app-listbox) – cybermonkey