FocusManager.SetFocusedElement(DependencyObject, IInputElement) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
对指定元素设置逻辑焦点。
public:
static void SetFocusedElement(System::Windows::DependencyObject ^ element, System::Windows::IInputElement ^ value);
public static void SetFocusedElement (System.Windows.DependencyObject element, System.Windows.IInputElement value);
static member SetFocusedElement : System.Windows.DependencyObject * System.Windows.IInputElement -> unit
Public Shared Sub SetFocusedElement (element As DependencyObject, value As IInputElement)
参数
- element
- DependencyObject
焦点范围,将使指定元素成为该范围内的 FocusedElement。
- value
- IInputElement
要获得逻辑焦点的元素。
示例
以下示例使用 SetFocusedElement 设置具有逻辑焦点的 元素,并使用 获取具有逻辑焦点的 GetFocusedElement元素。
// Sets the focused element in focusScope1
// focusScope1 is a StackPanel.
FocusManager.SetFocusedElement(focusScope1, button2);
// Gets the focused element for focusScope 1
IInputElement focusedElement = FocusManager.GetFocusedElement(focusScope1);
' Sets the focused element in focusScope1
' focusScope1 is a StackPanel.
FocusManager.SetFocusedElement(focusScope1, button2)
' Gets the focused element for focusScope 1
Dim focusedElement As IInputElement = FocusManager.GetFocusedElement(focusScope1)
注解
FocusedElement是具有特定焦点范围的逻辑焦点的元素。 此对象可能具有键盘焦点,也可能没有键盘焦点。 键盘焦点是指接收键盘输入的元素。 有关焦点、键盘焦点和逻辑焦点的详细信息,请参阅 输入概述。
可以指定一个焦点范围,该范围是元素所位于焦点范围的上级。 例如,如果 StackPanel 是焦点范围,并且其父级Window是焦点范围,TextBox则 的子级StackPanel可以在调用 SetFocusedElement时将 指定Window为焦点范围。 TextBox然后FocusedElement,对于Window焦点范围和焦点范围,则为 StackPanel 。
SetFocusedElement 将为指定焦点范围内的指定元素提供逻辑焦点,并尝试为元素提供键盘焦点。