Keyboard.GotKeyboardFocus Přidružená událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastane, když prvek obdrží fokus klávesnice.
see AddGotKeyboardFocusHandler, and RemoveGotKeyboardFocusHandler
see AddGotKeyboardFocusHandler, and RemoveGotKeyboardFocusHandler
see AddGotKeyboardFocusHandler, and RemoveGotKeyboardFocusHandler
Příklady
Následující příklad vytvoří TextBox a připojí obslužné rutiny událostí pro GotKeyboardFocus událost a LostKeyboardFocus událost. TextBox Když získá fokus klávesnice, změní se barva pozadí a text TextBox textu se vymaže. TextBlock Když ztratí fokus klávesnice, změní se barva pozadí a volá se metoda, která resetuje proměnné použité v ukázce.
<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 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 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 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();
}
}
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
Poznámky
Jedná se o připojenou událost. WPF implementuje připojené události jako směrované události. Připojené události jsou základním konceptem jazyka XAML pro odkazování na události, které lze zpracovat u objektů, které tuto událost nedefinují, což WPF rozšiřuje také tím, že událost umožňuje procházet trasu. Připojené události nemají v kódu přímou syntaxi zpracování; chcete-li připojit obslužné rutiny pro směrovanou událost v kódu, použijte určenou metodu Add*Handler. Podrobnosti najdete v tématu Přehled připojených událostí.
Fokus klávesnice odkazuje na objekt, který přijímá vstup klávesnice. Prvek s fokusem klávesnice je IsKeyboardFocused nastavený na true. Na celé ploše může být jenom jeden prvek s fokusem klávesnice. Logický fokus odkazuje na objekt v oboru fokusu, který má fokus. Další informace o fokusu, fokusu klávesnice a logickém fokusu najdete v tématu Přehled vstupu a Přehled fokusu.
Pokud je PreviewGotKeyboardFocus událost nebo PreviewLostKeyboardFocus událost zpracována, fokus klávesnice se změní.
Informace o směrované události
| Položka | Value |
|---|---|
| Pole Identifikátor | GotKeyboardFocusEvent |
| Strategie směrování | Bublající |
| Delegát | KeyboardFocusChangedEventHandler |
- Odpovídající událost tunelování je PreviewGotKeyboardFocus.