在页面之间导航时增加了内存使用量-WPF-Kinect SDK 1.7
本文关键字:使用量 内存 -WPF-Kinect SDK 增加 之间 导航 | 更新日期: 2023-09-27 18:21:06
我正在创建一个桌面应用程序,导航将使用Kinect完成。(我使用的是1.7 SDK中引入的新交互)。
我遵循了一个在线教程我还注意到一些用户抱怨这个内存问题。
为了能够用手导航,表单上需要有一个Kinect区域,并且需要将传感器绑定到该区域。
// Bind the sensor chooser's current sensor to the KinectRegion
var regionSensorBinding = new Binding("Kinect") { Source = this.sensorChooser };
BindingOperations.SetBinding(this.kinectRegion, KinectRegion.KinectSensorProperty, regionSensorBinding);
我把记忆力的问题缩小到这两行。
每次我换页面:
(Application.Current.MainWindow.FindName("_mainFrame") as Frame).Source = new Uri("MainMenu.xaml", UriKind.Relative);
内存使用量增加(这是可以理解的),但从未下降。
这段代码在每个新页面上,用于将我的传感器绑定到该页面的动态区域。
关于为什么会出现这种情况,或者我如何纠正这种情况,有什么想法吗?
附言:我使用KinectSensorChooser就像在教程中一样,如果这有区别的话。
我终于找到了解决绑定问题的方法。
当我离开页面时,我刚刚清除了绑定:
BindingOperations.ClearBinding(this.kinectRegion, KinectRegion.KinectSensorProperty);
如果有人遇到这个内存问题,请访问这个页面,看看WPF是如何处理页面转换的,这实际上是我真正的问题。