当用户单击WinForms菜单项时,将执行以下代码:
// this is an Infragistics XamRibbonWindow
var someWpfInfragisticsWindow = new SomeWpfInfragisticsWindow();
ElementHost.EnableModelessKeyboardInterop(someWpfInfragisticsWindow);
someWpfInfragisticsWindow.Show();
显示的窗口是Infragistics XamRibbonWindow。它还包含一个Infragistics XamDataGrid,其DataSource绑定到视图模型上的IEnumerable属性。
该窗口还包含一个“搜索”按钮,该按钮将从数据库中检索新的项目集合,并设置前面提到的视图模型属性。这会导致网格显示新集合。
稍后,用户可以关闭窗口。没有编写代码来处理关闭。
我的问题是:
答案 0 :(得分:1)
当窗口关闭时,如果您没有引用它,它应该可用于垃圾收集。根据提供的详细信息,我没有看到这种方法存在任何内存问题。
请注意,Infragistics确实有一些在关闭窗口后仍会保留的静态类。
如果使用Infragistics控件确实存在内存泄漏问题,并认为控件可能是原因,您应该联系Infragistics以获取帮助以确定泄漏原因。可以在论坛上发布帖子或从get help page提交支持案例。