如何禁用 Xbox One 的指针模式(C#、UWP)

Posted

技术标签:

【中文标题】如何禁用 Xbox One 的指针模式(C#、UWP)【英文标题】:How Can I Disable Pointer Mode For Xbox One (C#, UWP) 【发布时间】:2018-01-26 14:51:35 【问题描述】:

我想知道如何在 UWP 应用程序上禁用指针模式。我已经设置了 XYFocusKeyboardNavigation,当我将我的 xbox one 控制器插入我的 PC 时,一切正常。每当我调试到我的控制台时,我都有一个指针而不是典型的 xbox 控件。我试图通过添加以下命令来禁用它,但没有任何效果,请帮助:

RequiresPointer="Never" //At Page Level

this.RequiresPointer = RequiresPointer.Never; //On Load

RequiresPointerMode = "WhenRequested" //In App.xaml

this.RequiresPointerMode = Windows.UI.Xaml.ApplicationRequiresPointerMode.WhenRequested; //tried on load but requirespointermode does not exist

Application.Current.RequiresPointerMode = ApplicationRequiresPointerMode.WhenRequested; //tried on load but got Error: System.NotSupportedException: 'Specified method is not supported.'

【问题讨论】:

【参考方案1】:

每当我调试到我的控制台时,我都有一个指针而不是典型的 xbox 控件。我试图通过添加以下命令来禁用它,但没有任何效果,请帮助: this.RequiresPointerMode = Windows.UI.Xaml.ApplicationRequiresPointerMode.WhenRequested; //tried on load but requirespointermode does not exist

要关闭鼠标模式,请将以下内容添加到应用的构造函数中

App.xaml.cs

public App()

    this.InitializeComponent();
    this.RequiresPointerMode = Windows.UI.Xaml.ApplicationRequiresPointerMode.WhenRequested;
    this.Suspending += OnSuspending;

注意:

如果您正在编写 C++/DirectX 应用程序,则无需执行任何操作。鼠标模式仅适用于 html 和 XAML 应用程序。

更多详情可以参考How to disable mouse mode。

【讨论】:

this.RequiresPointerMode、Suspending 和 OnSuspending 的定义不存在....我不久前尝试过这样做。有什么想法吗? RequiresPointerModeApplication 属性,您应该将上述代码写入您的App.xaml.cs 文件中。否则会抛出编译错误。 谢谢你的工作....问题是你说我试图把代码放在我的主窗体中而不是 App.xaml.cs

以上是关于如何禁用 Xbox One 的指针模式(C#、UWP)的主要内容,如果未能解决你的问题,请参考以下文章

UWP - Xbox One - JavaScript - 禁用 gamepadB 默认后退导航行为

在开发模式下无法在 Xbox One 上登录我的应用沙盒

如何在电脑上玩Xbox One游戏

Xbox One UWP:“激活请求失败”

如何使用 Xbox Series X 驾驶游戏练习车技 All In One

如何分别校准 Kinect xbox one 和投影仪?