ContentElement.Focus Method

Definition

Tenta definir o foco para esse 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

true se o foco do teclado puder ser definido para esse elemento, false se a chamada desse método não forçou o foco.true if keyboard focus could be set to this element; false if this method call did not force focus.

Implements

Examples

O exemplo a seguir é um manipulador de eventos carregado por página que localiza um parágrafo nomeado especificado no documento e define o foco para ele.The following example is a page-loaded event handler that finds a specified named paragraph in the document and sets focus to it. Os parágrafos não são focados por padrão; Este parágrafo em particular tinha um estilo aplicado (não mostrado) que usava um estilo Setter para torná-lo focado.Paragraphs are not focusable by default; this particular paragraph had a style applied (not shown) that used a style Setter to make it focusable.

void FocusOnParagraph(object sender, RoutedEventArgs e)
{
  ContentElement ce = this.FindName("focusableP") as ContentElement;
  ce.Focus();
}
Private Sub FocusOnParagraph(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Dim ce As ContentElement = TryCast(Me.FindName("focusableP"), ContentElement)
  ce.Focus()
End Sub

Remarks

Para ser focado, Focusable e IsEnabled devem ser true.To be focusable, Focusable and IsEnabled must both be true. Observe que quase todos os ContentElement classes derivadas não são Focusable por padrão.Note that nearly all ContentElement derived classes are not Focusable by default.

Mesmo que um elemento esteja focado e habilitado, a manipulação de eventos dentro de uma árvore específica, (por exemplo, para um controle composto) pode responder aos eventos de foco de visualização, não permitindo o foco ali, portanto, esse método retornará false.Even if an element is focusable and enabled, event handling within a specific tree, (such as for a composite control) might respond to the preview focus events by not allowing focus there, thus this method would return false.

O foco em geral é regido por dois conceitos separados: foco do teclado e foco lógico, que nem sempre são idênticos.Focus in general is governed by two separate concepts: keyboard focus and logical focus, which are not always identical. Esse método define o foco lógico.This method sets the logical focus. Não há meios programáticos de definir o foco do teclado especificamente; o foco do teclado é determinado pela entrada do usuário.There is no programmatic means to set keyboard focus specifically; keyboard focus is determined by user input. Para obter mais informações, consulte Visão geral do foco e visão geral de entrada.For more information, see Focus Overview and Input Overview.

Se chamar Focus retornar true, IsKeyboardFocused e IsKeyboardFocusWithin também serão true.If calling Focus returns true, IsKeyboardFocused and IsKeyboardFocusWithin are also true.

Se as propriedades relacionadas ainda não estiverem true, quando você chamar Focus, um ou mais dos seguintes eventos serão gerados na seguinte ordem: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (origem é o novo destino de foco), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (origem é o novo destino de 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).

Applies to

See also