C# 使用事件后的KinectSDK轮询
我正在制作Kinect应用程序的两个部分。有一个WPF菜单,它最终将用户引导到XNA游戏 问题是我使用的WPF控件(如KinectRegion)正在向KinectSensor对象上的AllFramesReady添加事件侦听器。当我在XNA游戏中尝试轮询骨架数据时,我得到以下错误:C# 使用事件后的KinectSDK轮询,c#,xna,kinect,kinect-sdk,C#,Xna,Kinect,Kinect Sdk,我正在制作Kinect应用程序的两个部分。有一个WPF菜单,它最终将用户引导到XNA游戏 问题是我使用的WPF控件(如KinectRegion)正在向KinectSensor对象上的AllFramesReady添加事件侦听器。当我在XNA游戏中尝试轮询骨架数据时,我得到以下错误: This API cannot be called when an event listener has been set 我的问题:如何重置KinectSDK中的所有内容,以便在启动XNA游戏时可以一劳永逸?或者,
This API cannot be called when an event listener has been set
我的问题:如何重置KinectSDK中的所有内容,以便在启动XNA游戏时可以一劳永逸?或者,至少,让它进入一种状态,在这种状态下,我可以成功地轮询骨架数据
我不知道WPF控件附加了哪些方法来处理事件,因此我无法从事件中显式删除它们
类似问题:您不能同时使用事件处理程序和轮询方法。Kinect API不支持这一点。更好的方法是在轮询方法中使用全局变量,并在您想要的任何地方使用它。好吧,我最终只是将我的XNA游戏切换到事件模型,而不是轮询,这一点目前还可以使用。