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

要移動焦點的方向,以列舉型別 (Enumeration) 的值表示。

傳回

Boolean

若成功移動焦點則傳回 true,若所指定之方向的目標項目不存在,或無法成為鍵盤導向,則傳回 false

範例

下列範例會實作處理數個可能按鈕輸入的處理常式。 每個按鈕都代表可能的 FocusNavigationDirection 。 處理常式會指定適當的 FocusNavigationDirection 做為所提供之類型參數的初始化 TraversalRequest ,以追蹤具有目前鍵盤焦點的專案,並在該元素上呼叫 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 覆寫 並密封 方法。

適用於

另請參閱