2011-08-09 50 views
0

我想在WPF中使用一個Xbox控制器,我似乎遇到了問題。XNA GamePad輸入觸發事件WPF

我能夠從XNA搶輸入使用遊戲手柄

Microsoft.Xna.Framework.Input.GamePadState currentState = Microsoft.Xna.Framework.Input.GamePad.GetState(Microsoft.Xna.Framework.PlayerIndex.One); 

,但我無法弄清楚如何使WPF觸發說「的keyPressed」事件按下控制器上的東西時。

我試着做一些研究,但是我找不到任何過於具體的東西,或者如果我這樣做,他們大多數時間都沒有回答。我發現這之下,但它似乎沒有回答你如何能真正做到這一點:

Can you program buttons on a gamepad to bind with mouse/keybourd input?

回答

3

您需要看每個按鈕,看看他們是否被按下。

if (currentState.Buttons.A == ButtonState.Pressed) 
{ 
    do something 
} 
2

作爲另一個答案說,你可以檢查手柄的狀態:

if (currentState.Buttons.A == ButtonState.Pressed) 

您還可以使用

if (currentState.IsButtonDown(Buttons.A)) 

您可能希望創建按鈕的字典到關鍵映射,但這取決於你。

一旦您知道如何檢查遊戲手柄狀態,您的問題就會降低到this question。看到接受的答案。