我有一个简单的 ViewModel
public class TestViewModel : ViewModelBase, IDisposable
{
public TestViewModel()
{
Messenger.Default.Register<string>(this, MessageHandling);
}
public void MessageHandling(string message)
{
System.Windows.MessageBox.Show(message);
}
public override void Cleanup()
{
Messenger.Default.Unregister(this);
base.Cleanup();
}
}
我像这样在我的 XAML 中使用它:
<Window.Resources>
<ResourceDictionary>
<vm:TestViewModel x:Key="ViewModel"></vm:TestViewModel>
</ResourceDictionary>
</Window.Resources>
<Grid DataContext="{Binding Source={StaticResource ViewModel}}">
</Grid>
任何人都可以帮助我们处理这个 ViewModel,通过处理我的意思是我应该订阅哪个事件来调用 VM 方法清理?因为如果我不进行清理,ViewModel 将保留在内存中并仍然处理消息。我希望我解释得当:)
提前致谢