这个ChildWindow会被GC收集吗?

时间:2012-02-08 17:34:56

标签: c# wpf garbage-collection

最近我一直在使用匿名方法,所以我想知道我是否喜欢:

在我的MainWindow课程中说,我有:

ChildWindow myChildWindow = new ChildWindow();
myChildWindow.Closing+= (o, e) => {
 //DoSomething
 rootGrid.Children.Remove(o as ChildWindow);
}
this.rootGrid.Children.Add(myChildWindow );
myChildWindow.Show();

在这种情况下,我将无法从.Closing中删除事件处理程序,因为它是使用匿名方法定义的。

这个ChildWindow还会被GC收集吗?

1 个答案:

答案 0 :(得分:1)

您所做的只是创建一个带有闭包对象的委托,并从子窗口引用它。

您没有创建任何其他参考子窗口。