この記事は機械翻訳されたものです。 記事の文章にポインターを重ねると、原文のテキストが表示されます。 詳細情報
訳文
原文
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

Keyboard.GotKeyboardFocus アタッチされるイベント

要素がキーボード フォーカスを受け取ったときに発生します。

名前空間:  System.Windows.Input
アセンブリ:  PresentationCore (PresentationCore.dll 内)
XAML の XMLNS: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

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

識別子フィールド

GotKeyboardFocusEvent

ルーティング方法

バブル

Delegate

KeyboardFocusChangedEventHandler

これは添付イベントです。WPF では、添付イベントがルーティング イベントとして実装されています。 添付イベントは、基本的に、そのイベントを定義しないオブジェクトで処理できるイベントを参照するための XAML 言語の概念です。WPF では、この概念をさらに拡張して、イベントがルートを走査できるようになっています。 添付イベントのコードには、直接処理構文がありません。ルーティング イベントのハンドラーをコードに添付するには、指定された Add*Handler メソッドを使用します。 詳細については、「添付イベントの概要」を参照してください。

キーボード フォーカスは、キーボード入力を受け取るオブジェクトを指します。 キーボード フォーカスを持つ要素の IsKeyboardFocused は、true に設定されています。 キーボード フォーカスを持つ要素は、デスクトップ全体で 1 つしか存在できません。 論理フォーカスは、フォーカスを持つフォーカス範囲内のオブジェクトを指します。 フォーカス、キーボード フォーカス、および論理フォーカスの詳細については、「入力の概要」および「フォーカスの概要」を参照してください。

PreviewGotKeyboardFocus イベントまたは PreviewLostKeyboardFocus イベントが処理されると、キーボード フォーカスは変更されます。

TextBox を作成し、GotKeyboardFocus イベントおよび LostKeyboardFocus イベントのイベント ハンドラーを割り当てる例を次に示します。 TextBox がキーボード フォーカスを取得すると、背景色が変更され、TextBox のテキストが消去されます。 TextBlock がキーボード フォーカスを失うと、背景色が変更され、サンプルで使用する変数をリセットするメソッドが呼び出されます。


<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

サポート対象 : 4.5、4、3.5、3.0

.NET Framework Client Profile

サポート対象 : 4、3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (サーバー コア ロールはサポート対象外), Windows Server 2008 R2 (SP1 以降でサーバー コア ロールをサポート。Itanium はサポート対象外)

この .NET Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、次を参照してください。.NET Framework システム要件.

コミュニティの追加

表示:
© 2015 Microsoft