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. Обработчик отслеживает элемент с текущим фокусом клавиатуры и вызывает MoveFocus для этого элемента, указывая соответствующий FocusNavigationDirection как инициализацию для предоставленного параметра типа TraversalRequest.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.

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

Дополнительно