Control.FocusDisengaged 事件

定义

当焦点从游戏板/远程交互) 的控制边界释放 (时发生。

// Register
event_token FocusDisengaged(TypedEventHandler<Control, FocusDisengagedEventArgs const&> const& handler) const;

// Revoke with event_token
void FocusDisengaged(event_token const* cookie) const;

// Revoke with event_revoker
Control::FocusDisengaged_revoker FocusDisengaged(auto_revoke_t, TypedEventHandler<Control, FocusDisengagedEventArgs const&> const& handler) const;
public event TypedEventHandler<Control,FocusDisengagedEventArgs> FocusDisengaged;
function onFocusDisengaged(eventArgs) { /* Your code */ }
control.addEventListener("focusdisengaged", onFocusDisengaged);
control.removeEventListener("focusdisengaged", onFocusDisengaged);
- or -
control.onfocusdisengaged = onFocusDisengaged;
Public Custom Event FocusDisengaged As TypedEventHandler(Of Control, FocusDisengagedEventArgs) 
<control FocusDisengaged="eventhandler"/>

事件类型

Windows 要求

设备系列
Windows 10 Anniversary Edition (在 10.0.14393.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v3.0 中引入)

注解

有关事件数据,请参阅 FocusDisengagedEventArgs

通过焦点参与,可以更轻松地使用游戏板或遥控器与应用交互。 设置焦点占用不会影响键盘或其他输入设备。

IsFocusEngagementEnabled 属性设置为 true 时,它会将控件标记为需要焦点占用。 这意味着用户必须按“A/选择”按钮来“占用”该控件并与其交互。 完成后,他们可以按 B/后退按钮以脱离控件并导航离开控件。

有关详细信息,请参阅针对 Xbox 和电视进行设计一文的焦点参与部分。

版本兼容性

FocusDisengaged 事件在 Windows 10 版本 1607 之前不可用。 如果 Microsoft Visual Studio 中应用的“最低平台版本”设置小于本页稍后的“要求”块中显示的“引入版本”,则必须设计和测试应用以考虑到这一点。 有关详细信息,请参阅 版本自适应代码

若要避免在以前版本的 Windows 10 上运行应用时出现异常,请不要在未首先执行运行时检查的情况下连接此事件。 此示例演示如何使用 ApiInformation 类在使用此事件之前检查是否存在此事件。

<Slider x:Name="slider1" Loaded="Slider_Loaded"/>
private void Slider_Loaded(object sender, RoutedEventArgs e)
{
    if (ApiInformation.IsEventPresent("Windows.UI.Xaml.Controls.Control", "FocusDisengaged"))
    {
        slider1.FocusDisengaged += Slider1_FocusDisengaged;
    }
}

适用于