WPF MVVM 关闭窗体

由于程序采用MVVM模式同时有些操作需要单独窗口来进行处理。因此就会产生窗口关闭问题,

由于是MVVM和需要操作弹出窗口中操作的内容因此就需要在mvvm进行统一处理。

网上查了几种方法采用其中一种 不知道是合理,但是可以实现我所需要的效果,贴出来大家可以参考一下,同时也请给出更好地方案。

 

1首先给弹出窗体起一个名字。

这里有个要注意的就是 弹出的子窗体 要与主窗体采用同一个ViewModel这样方便数据传输。

或者采用事件委托,子窗体关闭之后要将操作处理的结果 委托给 主窗体所属的ViewModel。

弹出的子窗体

 

窗体代码

注意 所绑定的DataContent

和确定按钮绑定的命令 以及窗体命名

按钮Command 命令来自子窗体的ViewModel 参数是窗体的名字

 

 

 

最后 关闭窗体,整理弹出窗口操作的数据,然后通过委托传递给父窗体的ViewModel中

 

委托注册

子窗体ViewModel与父窗体ViewModel事件绑定

 

备注此处委托我是用的系统自带的也可以自己定义

子窗体ViewModel中的委托事件

 

父窗体中实现事件的方法

 

转载于:https://www.cnblogs.com/HelloXZ/p/3449667.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值