标签: c# wpf
我正在使用UserControl手动将一些属性更改处理程序附加到域对象。在包含UserControl的窗口关闭后,取消注册这些处理程序的正确调用站点是什么?使用析构函数显然是愚蠢的,因为只要域对象通过处理程序引用它就不会收集对象。
UserControl
答案 0 :(得分:1)
您应该使用UserControl.Unloaded事件,该事件在从可视树中删除用户控件后发生。
UserControl.Unloaded
另一种方法是实现IDisposable模式。但解决方案#1将是更好的方法。
IDisposable