2013-10-15 2 views

Antwort

86

Es hängt von der Art des Fokus ab, nach dem Sie suchen, Logical oder Keyboard.

Tastaturfokus bezieht sich auf das Element, das eine Tastatureingabe und logischen Fokus erhält in einem Fokusbereich, das den Fokus hat, um das Element bezieht.

FocusManager wird das Element mit dem logischen Fokus innerhalb der Fokusbereich spezifiziert, in diesem Fall das Fenster (this):

IInputElement focusedControl = FocusManager.GetFocusedElement(this); 

Keyboard wird das Element mit der aktuellen Tastatureingabefokus zurück:

IInputElement focusedControl = Keyboard.FocusedElement; 
+1

Vielen Dank für die Beratung. Ich benutze die erste Option mit der Kombination von Application.Current.Windows [0] anstelle von 'this'. – Honzajscz

+2

Siehe [System.Windows.Input.Keyboard.FocusedElement] (https://msdn.microsoft.com/en-us/library/system.windows.input.keyboard.focusedelement.aspx) und [System.Windows.Input. FocusManager.GetFocusedElement()] (https://msdn.microsoft.com/en-us/library/ms604088.aspx) – Lu55