UIElement.Focus Method

Definition

Intenta establecer el foco en este 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

Returns

Boolean

Devuelve true si el foco de teclado y el foco lógico se establecieron en este elemento; devuelve false si se estableció únicamente el foco lógico en este elemento o si la llamada a este método no forzó un cambio de foco.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.

Implements

Examples

En el ejemplo siguiente se establece el foco en un TextBox al que hace referencia Namey, a continuación, se ajusta la posición del cursor dentro de la TextBox.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

Remarks

Para poder recibir el foco, Focusable y IsEnabled deben estar true.To be focusable, Focusable and IsEnabled must both be true.

Incluso si el elemento tiene el foco y es válido, los eventos de vista previa de Focus se pueden procesar en un árbol específico y es posible que no se permita el foco en ese elemento (por ejemplo, en un control compuesto).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). En tal caso, este método devuelve false.In such a case, this method returns false.

En general, el foco se controla mediante dos conceptos diferentes: el foco de teclado y el foco lógico.In general, focus is controlled by two different concepts: keyboard focus and logical focus. Estos dos conceptos no son siempre los mismos.These two concepts are not always the same. Para obtener más información, vea información general sobreel Resumen del foco y la entrada.For more information, see Focus summary and Input Overview.

Si la llamada a Focus devuelve true, IsKeyboardFocused y IsKeyboardFocusWithin también se true.If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

Si las propiedades relacionadas todavía no están true, al llamar a Focus, se generan uno o varios de los siguientes eventos en el orden siguiente: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (el origen es el nuevo destino del foco), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (el origen es el nuevo destino del foco).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).

Para que esta llamada sea correcta, algún otro elemento de la aplicación necesitaba tener el foco previamente.In order for this call to be successful, some other element in the application needed to have focus previously.

Applies to