ElementHost'的潜在内存问题;ed WPF表单和网格绑定方法?

ElementHost'的潜在内存问题;ed WPF表单和网格绑定方法?,wpf,memory,infragistics,elementhost,Wpf,Memory,Infragistics,Elementhost,当用户单击WinForms菜单项时,将执行以下代码: //这是一个Infragistics Xamribbon窗口 var somewpffinfragisticswindow=新的somewpffinfragisticswindow(); ElementHost.EnableModelessKeyboardInterop(somewpffinfragisticswindow); somewpffinfragisticswindow.Show(); 显示的窗口是Infragistics Xa

当用户单击WinForms菜单项时,将执行以下代码:

//这是一个Infragistics Xamribbon窗口
var somewpffinfragisticswindow=新的somewpffinfragisticswindow();
ElementHost.EnableModelessKeyboardInterop(somewpffinfragisticswindow);
somewpffinfragisticswindow.Show();

显示的窗口是Infragistics Xamribbon窗口。它还包含Infragistics XamDataGrid,其数据源绑定到视图模型上的IEnumerable属性

该窗口还包含一个“搜索”按钮,该按钮将从数据库检索新的项目集合,并设置前面提到的视图模型属性。这将导致网格显示新集合

稍后,用户可以关闭窗口。没有编写代码来处理关闭

我的问题是:

  • 关闭窗口是否会处理该窗口及其控件,并使绑定到该窗口的集合能够GC(假定不存在对该集合的其他引用)
  • 有人看到我所描述的有任何潜在的内存问题吗?可能是由于网格显示的项目的更新方式(或其他原因)

  • 当窗口关闭时,如果您没有保存对它的引用,它应该可以用于垃圾收集。从提供的细节中,我看不出这种方法有任何内存问题

    请注意,Infragistics确实有一些静态类,它们将在关闭窗口后保留

    如果使用Infragistics控件时确实存在内存泄漏问题,并且认为这些控件可能是导致内存泄漏的原因,则应联系Infragistics寻求帮助,以确定泄漏的原因。这里有一些链接,可以在论坛上发布,也可以从网站上提交支持案例

    // this is an Infragistics XamRibbonWindow var someWpfInfragisticsWindow = new SomeWpfInfragisticsWindow(); ElementHost.EnableModelessKeyboardInterop(someWpfInfragisticsWindow); someWpfInfragisticsWindow.Show();