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

Направление, в котором перемещается фокус, в виде значения перечисления.

Возвращаемое значение

Возвращает значение true, если фокус успешно перемещен; false, если целевого элемента в указанном направлении не существует или на него нельзя установить клавиатурный фокус.

Примеры

В следующем примере реализуется обработчик, обрабатывающий несколько возможных входных данных кнопки. Каждая кнопка представляет собой возможный FocusNavigationDirectionобъект . Обработчик отслеживает элемент с текущим фокусом клавиатуры и вызывает MoveFocus этот элемент, указывая соответствующий FocusNavigationDirection в качестве инициализации для предоставленного TraversalRequest параметра типа.

// 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 и запечатывает метод .

Применяется к

См. также раздел