所以我的第一次尝试是在代码后端完成所有操作,现在我正在尝试重构我的代码以使用MVVM模式,遵循MVVM in the box信息的指导。
我创建了一个与我的视图类匹配的视图模型类,并且正在将代码从代码后端移动到视图模型,从命令开始。
我的第一个问题是尝试实现一个“关闭”按钮,如果数据没有被修改,则关闭窗口。 我已经设置了一个CloseCommand来替换“onClick”方法,一切都很好,除了代码尝试运行
有人能建议我如何从视图模型命令关闭窗口吗?
我创建了一个与我的视图类匹配的视图模型类,并且正在将代码从代码后端移动到视图模型,从命令开始。
我的第一个问题是尝试实现一个“关闭”按钮,如果数据没有被修改,则关闭窗口。 我已经设置了一个CloseCommand来替换“onClick”方法,一切都很好,除了代码尝试运行
this.Close()
的地方。 显然,由于代码已从窗口移动到普通类,'this'不是一个窗口,因此无法关闭。 但是,根据MVVM,视图模型不知道视图,因此我无法调用view.Close()
。有人能建议我如何从视图模型命令关闭窗口吗?