2017-08-16 30 views
0

我正在尝试在UWP平台上编写游戏。问题是:我需要将Gamepad B和Escape绑定到两个不同的操作。例如。逃脱应该总是关闭当前的任何内容,但是游戏手柄B应该只能这样做,除非我的游戏为了不同的目的而处理它。是否可以在Xbox的UWP应用程序中禁用游戏板按钮映射?

但是,在Xbox上的KeyDown中按下游戏手柄B始终可以看到Escape。

+0

您使用的是什么appmodel?在Direct3D appmodel应用程序中,游戏板没有键盘映射。 –

回答

0

我想出的另一种方法是在特定控件上处理KeyDown,并检查eventArgs.OriginalKey。然后在处理程序中,您可以检测映射(因为OriginalKey将不匹配Key),并设置eventArgs.Handled = true以避免密钥处理。

+0

这不处理'VirtualKey.GamepadLeftTrigger'。它甚至没有火灾:( – LOST

0

我认为KeyRoutedEventArgs和OriginalKey是你要找的。这里有一个示例在我的应用程序中适用于我:

private void StackPanel_KeyUp(object sender, Windows.UI.Xaml.Input.KeyRoutedEventArgs e) 
    { 

     if (e.OriginalKey == VirtualKey.GamepadB) 
     { 

     } 
    } 
+0

让我知道它是否适合你,我可以提供更多的细节样本 –

相关问题