다음을 통해 공유


FrameworkElement.MoveFocus(TraversalRequest) 메서드

정의

키보드 포커스를 이 요소 반대쪽에 있는 다른 요소를 향해 제공된 이동 방향으로 이동합니다.

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

포커스를 이동할 방향(열거형의 값)입니다.

반환

Boolean

포커스가 이동되었으면 true를 반환하고, 지정된 방향에 대상 요소가 없거나 대상 요소에 키보드 포커스를 설정할 수 없으면 false를 반환합니다.

예제

다음 예제에서는 가능한 여러 단추 입력을 처리하는 처리기를 구현합니다. 각 단추는 가능한 FocusNavigationDirection단추를 나타냅니다. 처리기는 현재 키보드 포커스가 있는 요소를 추적하고 제공된 형식 매개 변수의 초기화 TraversalRequest 로 적절한 FocusNavigationDirection 요소를 지정하여 해당 요소를 호출 MoveFocus 합니다.

// 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 하고 봉인합니다.

적용 대상

추가 정보