Compartilhar via


ContentElement.Focus Método

Definição

Tenta definir o foco para esse elemento.

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

Retornos

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.

Implementações

Exemplos

O exemplo a seguir é um manipulador de eventos carregado de página que localiza um parágrafo nomeado especificado no documento e define o foco para ele. Parágrafos não são focalizáveis por padrão; este parágrafo específico tinha um estilo aplicado (não mostrado) que usava um estilo Setter para torná-lo focalizável.

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

Comentários

Para ser focalizável e FocusableIsEnabled ambos devem ser true. Observe que quase todas as ContentElement classes derivadas não Focusable são por padrão.

Mesmo que um elemento seja focalizável e habilitado, o tratamento de eventos em uma árvore específica (como para um controle composto) pode responder aos eventos de foco de visualização não permitindo o foco lá, portanto, esse método retornaria false.

O foco em geral é regido por dois conceitos separados: foco do teclado e foco lógico, que nem sempre são idênticos. Esse método define o foco lógico. Não há meios programáticos para definir especificamente o foco do teclado; O foco do teclado é determinado pela entrada do usuário. Para obter mais informações, consulte Visão geral do foco e Visão geral de entrada.

Se a chamada Focus retornar true, IsKeyboardFocused e IsKeyboardFocusWithin também trueforem .

Se as propriedades relacionadas ainda truenão forem , quando você chamar Focus, um ou mais dos seguintes eventos serão gerados na seguinte ordem: PreviewLostKeyboardFocus, PreviewGotKeyboardFocus (a origem é o novo destino de foco), IsKeyboardFocusedChanged, IsKeyboardFocusWithinChanged, LostKeyboardFocus, GotKeyboardFocus (a origem é o novo destino de foco).

Aplica-se a

Confira também