【发布时间】:2011-12-12 00:01:06
【问题描述】:
在适用于 Windows Phone 的 Silverlight 中,我有几个视图模型是一次性的并执行必要的清理,例如在 Dispose() 中取消订阅长期服务的事件。
当我在视图堆栈中导航回来并且最新的视图模型完成了它的任务时,我需要调用它的 Dispose()。
有哪些以结构化方式执行此操作的好模式?
【问题讨论】:
标签: c# silverlight mvvm dispose
在适用于 Windows Phone 的 Silverlight 中,我有几个视图模型是一次性的并执行必要的清理,例如在 Dispose() 中取消订阅长期服务的事件。
当我在视图堆栈中导航回来并且最新的视图模型完成了它的任务时,我需要调用它的 Dispose()。
有哪些以结构化方式执行此操作的好模式?
【问题讨论】:
标签: c# silverlight mvvm dispose
您可以创建一个侦听Unloaded event 的混合行为或附加属性,然后在对象的DataContext 上调用Dispose()(如果它是IDisposable)。然后可以根据需要将其附加到您的视图中。
【讨论】: