博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVVM模式下弹出窗体
阅读量:7031 次
发布时间:2019-06-28

本文共 621 字,大约阅读时间需要 2 分钟。

原地址:

在mvvm模式下弹出窗体,有使用接口模式传入参数new一个对象的,还有的是继承于一个window,然后在window里面添加方法字段返回值注入之类的来间接实现。当然prism之类的弹窗管理器我们这里暂且不谈。

这里的关键点在于如何不在viewmodel或者后台代码里显示的 new Window().ShowDialog()之类的。

个人认为要比较合理的使用mvvm弹出窗体确实要做到完美是一件各自为政的事情,意思呢,就是每个人都有自己的不同的见解。我的粗略见解应该是通过viewmodel中的bool值比如isshowwindow的true或者false的值来显示/关闭窗体,而关键点如何显示/关闭窗体呢,我这里思路为,先是通过行为进行分离,然后通过window的相对路径或者是ioc容器指定导出来进行实例化显示/隐藏。

(1)行为分离:

        要使用到blend的behaviour,attched一个window,通过viewmodel调用的bool变量进行隐显,这种方案在异步操作隐现等待框的情况下是有奇效的,当然面前提是在你要show等待框的控件或者窗体上要应用指定的等待框样式。

(2)使用相对路径,或者使用ico容器通过指定的key来导出指定的窗体。

 今天电脑还没装好,等电脑装好了开发环境,有空的话再将实际例子放出吧。。。。

 

转载于:https://www.cnblogs.com/yk250/p/5773425.html

你可能感兴趣的文章
第十一天-《企业应用架构模式》-对象-关系行为模式
查看>>
[spring boot] jdbc
查看>>
新的开始!
查看>>
区块链— 比特币中的区块、账户验证和记账
查看>>
Electron打包,NSIS修改默认安装路径
查看>>
分享一些好用的网站
查看>>
【Android】Retrofit 2.0 的使用
查看>>
Nacos系列:基于Nacos的注册中心
查看>>
原生JS 实现复杂对象深拷贝(对象值包含函数)
查看>>
【跃迁之路】【732天】程序员高效学习方法论探索系列(实验阶段489-2019.2.22)...
查看>>
PAT A1060 科学记数法经典例题(全string库解决)
查看>>
仿知乎分享界面
查看>>
最小外接矩形思路以及实现
查看>>
Python是什么?简单了解pythonp-入门
查看>>
利用ES6进行Promise封装总结
查看>>
ES10 特性的完整指南
查看>>
学习threejs走过的坑
查看>>
ThinkSNS+的 SPA(H5)安装教程
查看>>
C++回声服务器_5-多进程版本
查看>>
CSS外边距折叠引发的问题
查看>>