我有一个用于登录的子窗口。以前,很大一部分代码都在windows的后台代码中。我重构了所有这些以适应MVVM模型。这一切都在工作,除了我不能关闭子窗口当它完成。
我已经研究了如何从虚拟机完成这个任务,但是我所尝试的一切都没有成功。
任何想法?
添加Finished
事件到视图模型。当需要关闭时,调用OnFinished
方法
public event EventHandler Finished;
protected void OnFinished()
{
if (Finished != null)
Finished(this, new EventArgs());
}
从子窗口后面的代码订阅事件并实际关闭窗口。
ViewModel.Finished += (s, e) => Close();
参见
创建MVVM友好对话框策略