2

我有一个用于登录的子窗口。以前,很大一部分代码都在窗口的代码后面。我重构了所有这些以适应 MVVM 模型。一切正常,除了完成后我无法关闭子窗口。

我已经研究了如何从 VM 中完成此操作,但我尝试过的一切都没有最终奏效。

有任何想法吗?

4

1 回答 1

2

Finished事件添加到视图模型。OnFinished需要关闭时调用方法。

public event EventHandler Finished;
protected void OnFinished()
{
    if (Finished != null)
        Finished(this, new EventArgs());
}

从子窗口后面的代码订阅事件并实际关闭窗口。

ViewModel.Finished += (s, e) => Close();

也可以看看

创建 MVVM 友好的对话策略

于 2013-03-22T02:47:23.560 回答