Keyboard.LostKeyboardFocus Keyboard.LostKeyboardFocus Keyboard.LostKeyboardFocus Attached Event

定義

要素がキーボード フォーカスを失ったときに発生します。Occurs when an element loses keyboard focus.

see AddLostKeyboardFocusHandler, and RemoveLostKeyboardFocusHandler
see AddLostKeyboardFocusHandler, and RemoveLostKeyboardFocusHandler
see AddLostKeyboardFocusHandler, and RemoveLostKeyboardFocusHandler

次の例では、作成、TextBoxのイベント ハンドラーをアタッチし、GotKeyboardFocusイベントとLostKeyboardFocusイベント。The following example creates a TextBox and attaches event handlers for the GotKeyboardFocus event and the LostKeyboardFocus event. ときに、TextBoxがキーボードのフォーカスを取得背景色を変更と、テキストをTextBoxがクリアされます。When the TextBox obtains keyboard focus, the background color is changed and the text of the TextBox is cleared. ときに、TextBlockがキーボード フォーカスを失う背景色が変更され、サンプルで使用される変数をリセットするメソッドが呼び出されます。When the TextBlock loses keyboard focus, the background color is changed and a method is called that resets variables used in the sample.

<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

注釈

これは、添付イベントです。This is an attached event. WPFWPF ルーティング イベントとして添付イベントを実装します。implements attached events as routed events. 添付イベントは、基本的に、 XAMLXAML 、そのイベントを定義しないオブジェクトで処理できるイベントを参照するための言語の概念をWPFWPFにより、ルートを走査するイベントを拡張します。Attached events are fundamentally a XAMLXAML language concept for referencing events that can be handled on objects that do not define that event, which WPFWPF expands upon by also enabling the event to traverse a route. アタッチされるイベントでは、コードでは、直接処理構文はありません。指定された追加に使用するコードでルーティング イベントのハンドラーをアタッチする * ハンドラー メソッド。Attached events do not have a direct handling syntax in code; to attach handlers for a routed event in code, you use a designated Add*Handler method. 詳細については、次を参照してください。添付イベントの概要します。For details, see Attached Events Overview.

キーボード フォーカスはキーボード入力を受信しているオブジェクトを指します。Keyboard focus refers to the object that is receiving keyboard input. キーボード フォーカスを持つ要素がIsKeyboardFocused設定trueします。The element with keyboard focus has IsKeyboardFocused set to true. デスクトップ全体でのキーボード フォーカスを持つ 1 つだけの要素があります。There can be only one element with keyboard focus on the entire desktop. 論理フォーカスはフォーカスを持つフォーカス範囲内でオブジェクトを指します。Logical focus refers to the object within a focus scope that has focus. フォーカス、キーボード フォーカスと論理フォーカスの詳細については、次を参照してください。入力の概要フォーカスの概要します。For more information on focus, keyboard focus, and logical focus, see Input Overview and Focus Overview.

場合、PreviewGotKeyboardFocusイベントまたはPreviewLostKeyboardFocusイベントは、キーボード フォーカスは変更されません。If the PreviewGotKeyboardFocus event or the PreviewLostKeyboardFocus event is handled, keyboard focus does not change.

ルーティングされたイベント情報Routed Event Information

識別子フィールドです。Identifier field LostKeyboardFocusEvent
ルーティング方法Routing strategy バブルBubbling
DelegateDelegate KeyboardFocusChangedEventHandler

適用対象