Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original

Keyboard.GotKeyboardFocus (Evento asociado)

Se produce cuando un elemento recibe el foco de teclado.

Espacio de nombres:  System.Windows.Input
Ensamblado:  PresentationCore (en PresentationCore.dll)
XMLNS para XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

See AddGotKeyboardFocusHandler, RemoveGotKeyboardFocusHandler
<object Keyboard.GotKeyboardFocus="KeyboardFocusChangedEventHandler" .../>

Campo de identificador

GotKeyboardFocusEvent

Estrategia de enrutamiento

Propagación

delegate

KeyboardFocusChangedEventHandler

Se trata de un evento adjunto. WPF implementa los eventos adjuntos como eventos enrutados. Los eventos asociados son fundamentalmente un concepto del lenguaje XAML para hacer referencia a los eventos que pueden controlarse en los objetos que no definen ese evento, el cual WPF expande para permitirle recorrer una ruta. Los eventos adjuntos no tienen una sintaxis de control directa en el código; para asociar los controladores de un evento enrutado en el código, utilice un método Add*Handler designado. Para obtener información detallada, vea Información general sobre eventos adjuntos.

El foco de teclado hace referencia al objeto que recibe las acciones del teclado. El elemento con el foco de teclado tiene la propiedad IsKeyboardFocused establecida en true. Sólo puede haber un elemento con foco de teclado en todo el escritorio. El foco lógico hace referencia al objeto situado en el ámbito que tiene el foco. Para obtener más información acerca del foco, el foco de teclado y el foco lógico, vea Información general sobre acciones del usuario e Información general sobre el foco.

Si se controla el evento PreviewGotKeyboardFocus o el evento PreviewLostKeyboardFocus, cambia el foco de teclado.

En el ejemplo siguiente se crea un control TextBox y se asocian los controladores de eventos del evento GotKeyboardFocus y el evento LostKeyboardFocus. Cuando TextBox obtiene el foco de teclado, cambia el color de fondo y se borra el texto de TextBox. Cuando TextBlock pierde el foco de teclado, cambia el color de fondo y se llama a un método que restablece las variables utilizadas en el ejemplo.


<Border BorderBrush="Black" BorderThickness="1"
        Width="200" Height="100" Margin="5">
  <StackPanel>
    <Label HorizontalAlignment="Center" Content="Type Text In This TextBox" />
    <TextBox Width="175"
             Height="50" 
             Margin="5"
             TextWrapping="Wrap"
             HorizontalAlignment="Center"
             VerticalScrollBarVisibility="Auto"
             GotKeyboardFocus="TextBoxGotKeyboardFocus"
             LostKeyboardFocus="TextBoxLostKeyboardFocus"
             KeyDown="SourceTextKeyDown"/>
  </StackPanel>
</Border>



		Private Sub TextBoxGotKeyboardFocus(ByVal sender As Object, ByVal e As KeyboardFocusChangedEventArgs)
			Dim source As TextBox = TryCast(e.Source, TextBox)

			If source IsNot Nothing Then
				' Change the TextBox color when it obtains focus.
				source.Background = Brushes.LightBlue

				' Clear the TextBox.
				source.Clear()
			End If
		End Sub



private void TextBoxGotKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
{
    TextBox source = e.Source as TextBox;

    if (source != null)
    {
        // Change the TextBox color when it obtains focus.
        source.Background = Brushes.LightBlue;

        // Clear the TextBox.
        source.Clear();
    }
}



		Private Sub TextBoxLostKeyboardFocus(ByVal sender As Object, ByVal e As KeyboardFocusChangedEventArgs)
			Dim source As TextBox = TryCast(e.Source, TextBox)

			If source IsNot Nothing Then
				' Change the TextBox color when it loses focus.
				source.Background = Brushes.White

				' Set the  hit counter back to zero and updates the display.
				Me.ResetCounter()
			End If
		End Sub



private void TextBoxLostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
{
    TextBox source = e.Source as TextBox;

    if (source != null)
    {
        // Change the TextBox color when it loses focus.
        source.Background = Brushes.White;

        // Set the  hit counter back to zero and updates the display.
        this.ResetCounter();
    }
}


.NET Framework

Compatible con: 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft