FrameworkElement.MoveFocus(TraversalRequest) メソッド

定義

指定した移動方向の別の要素にこの要素からキーボード フォーカスを移動します。Moves the keyboard focus away from this element and to another element in a provided traversal direction.

public:
 override bool MoveFocus(System::Windows::Input::TraversalRequest ^ request);
public override sealed bool MoveFocus (System.Windows.Input.TraversalRequest request);
override this.MoveFocus : System.Windows.Input.TraversalRequest -> bool
Public Overrides NotOverridable Function MoveFocus (request As TraversalRequest) As Boolean

パラメーター

request
TraversalRequest

フォーカスの移動方向を表す列挙値。The direction that focus is to be moved, as a value of the enumeration.

戻り値

フォーカスの移動が成功した場合は true が返されます。指定した方向にターゲット要素が存在しない場合や、ターゲット要素にキーボード フォーカスを設定できなかった場合は、false が返されます。Returns true if focus is moved successfully; false if the target element in direction as specified does not exist or could not be keyboard focused.

次の例では、いくつかの可能なボタン入力を処理するハンドラーを実装しています。The following example implements a handler that handles several possible button inputs. 各ボタンは、可能な FocusNavigationDirectionを表します。Each button represents a possible FocusNavigationDirection. ハンドラーは、現在のキーボードフォーカスを持つ要素を追跡し、指定された TraversalRequest 型パラメーターの初期化として適切な FocusNavigationDirection を指定することによって、その要素に対して MoveFocus を呼び出します。The handler tracks the element with current keyboard focus, and calls MoveFocus on that element, by specifying the appropriate FocusNavigationDirection as initialization for the TraversalRequest type parameter provided.

// Creating a FocusNavigationDirection object and setting it to a
// local field that contains the direction selected.
FocusNavigationDirection focusDirection = _focusMoveValue;

// MoveFocus takes a TraveralReqest as its argument.
TraversalRequest request = new TraversalRequest(focusDirection);

// Gets the element with keyboard focus.
UIElement elementWithFocus = Keyboard.FocusedElement as UIElement;

// Change keyboard focus.
if (elementWithFocus != null)
{
    elementWithFocus.MoveFocus(request);
}
' Creating a FocusNavigationDirection object and setting it to a
' local field that contains the direction selected.
Dim focusDirection As FocusNavigationDirection = _focusMoveValue

' MoveFocus takes a TraveralReqest as its argument.
Dim request As New TraversalRequest(focusDirection)

' Gets the element with keyboard focus.
Dim elementWithFocus As UIElement = TryCast(Keyboard.FocusedElement, UIElement)

' Change keyboard focus.
If elementWithFocus IsNot Nothing Then
    elementWithFocus.MoveFocus(request)
End If

注釈

この実装は UIElement.MoveFocus をオーバーライドし、メソッドをシールします。This implementation overrides UIElement.MoveFocus and seals the method.

適用対象

こちらもご覧ください