C# DirectX DirectInput无法检测已连接的设备

C# DirectX DirectInput无法检测已连接的设备,c#,wpf,directx,joystick,C#,Wpf,Directx,Joystick,我正在尝试使用Microsoft.directX.DirectInput;,在使用directX的C WPF应用程序中使用操纵杆;,但出于某种奇怪的原因,我在第一行中不断遇到一个错误,我试图检测所有连接的设备。到目前为止,我的应用程序中只有以下代码行: DeviceList gameControllerList=Manager.GetDeviceDeviceClass.GameControl,EnumDeviceFlags.AttachedOnly 错误如下: 错误类型:未处理XamlParse

我正在尝试使用Microsoft.directX.DirectInput;,在使用directX的C WPF应用程序中使用操纵杆;,但出于某种奇怪的原因,我在第一行中不断遇到一个错误,我试图检测所有连接的设备。到目前为止,我的应用程序中只有以下代码行:

DeviceList gameControllerList=Manager.GetDeviceDeviceClass.GameControl,EnumDeviceFlags.AttachedOnly

错误如下:

错误类型:未处理XamlParseException

错误消息:对与指定绑定约束匹配的类型“JoystickTest.MainWindow”调用构造函数时引发异常。“行号“3”和行位置“9”

我在网上找到了一个例子:


我目前的设置是WPF、C、.NET 4.0和Windows 7 64位的

,但这个问题实际上比它所说的要深一点。它无法初始化,因为您使用的是DirectInput程序集1.x,它将应用程序置于混合模式程序集中。您需要将其添加到app.config配置节点的底部。最后,否则它将继续从我的经验错误

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0"/>
</startup>
关键组件是useLegacyV2RuntimeActivationPolicy=true-这允许您的应用程序使用所需的旧程序集