UIElement.Focus UIElement.Focus UIElement.Focus UIElement.Focus Method

Definizione

Tenta di impostare lo stato attivo su questo elemento.Attempts to set focus to this element.

public:
 virtual bool Focus();
public bool Focus ();
abstract member Focus : unit -> bool
override this.Focus : unit -> bool
Public Function Focus () As Boolean

Restituisce

true se lo stato attivo della tastiera e lo stato attivo logico sono stati impostati su questo elemento; false se solo lo stato attivo logico è stato impostato su questo elemento, oppure se la chiamata a questo metodo non ha forzato la modifica dello stato attivo.true if keyboard focus and logical focus were set to this element; false if only logical focus was set to this element, or if the call to this method did not force the focus to change.

Implementazioni

Esempi

Nell'esempio seguente viene impostato lo stato TextBox attivo su un Nameoggetto a cui fa riferimento, quindi viene modificata la posizione TextBoxdel cursore all'interno di.The following example sets focus to a TextBox referenced by Name, and then adjusts the position of the cursor within the TextBox.

void OnClickMoveToStart(object sender, RoutedEventArgs e)
{
    tbPositionCursor.Focus();
    tbPositionCursor.Select(0, 0);
}
Private Sub OnClickMoveToStart(ByVal sender As Object, ByVal e As RoutedEventArgs)

    tbPositionCursor.Focus()
    tbPositionCursor.Select(0, 0)

End Sub

Commenti

Per essere attivabile Focusable e IsEnabled deve essere true.To be focusable, Focusable and IsEnabled must both be true.

Anche se l'elemento è attivabile e valido, gli Focus eventi di anteprima possono essere elaborati in un albero specifico e lo stato attivo su tale elemento potrebbe non essere consentito (ad esempio, in un controllo composito).Even if the element is focusable and valid, the Focus preview events may be processed in a specific tree, and focus on that element may not be allowed (for example, in a composite control). In tal caso, questo metodo restituisce false.In such a case, this method returns false.

In generale, lo stato attivo è controllato da due concetti diversi: lo stato attivo della tastiera e lo stato attivo logico.In general, focus is controlled by two different concepts: keyboard focus and logical focus. Questi due concetti non sono sempre gli stessi.These two concepts are not always the same. Per ulteriori informazioni, vedere Cenni preliminari sul riepilogo e sull'inputdello stato attivo .For more information, see Focus summary and Input Overview.

Se la Focus chiamata truea IsKeyboardFocused restituisce IsKeyboardFocusWithin , e truesono anche.If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

Se le proprietà correlate non sono già truepresenti, quando si Focuschiama, uno o più degli eventi seguenti vengono generati nell'ordine seguente: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (l'origine è la nuova destinazione dello stato attivo IsKeyboardFocusedChanged) IsKeyboardFocusWithinChanged,,, LostKeyboardFocus ,GotKeyboardFocus (l'origine è la nuova destinazione dello stato attivo).If the related properties are not already true, when you call Focus, one or more of the following events are raised in the following order: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (source is the new focus target), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (source is the new focus target).

Affinché la chiamata abbia esito positivo, è necessario che un altro elemento nell'applicazione abbia lo stato attivo in precedenza.In order for this call to be successful, some other element in the application needed to have focus previously.

Si applica a