WPF MVVM 下窗口之间的传值
自己记录一下怕自己以后都忘记了。
言归正传,对于窗口之间的传值我第一时间先到的就是在子窗口定义一个变量,在父窗口打开子窗口的时候,给子窗口中的变量赋值,从而实现窗口直接的传值。
但是回头想了一下,我现在需要的是让值传到子窗口的ViewModel里面去做数据的处理,我这样做就只能传达窗口里面去,然后在从窗口传到窗口对于的ViewModel中去,然后在去做数据的处理,这样做又觉得有点过于复杂了。
为了不过于复杂的去写,在思考着个问题的时候,突然灵光乍现,想到了一个取巧的方法。
就是父窗口和子窗口都使用同一个ViewModel,这样就不用去做什么窗口之前的传值了,只需要在ViewModel中定义好变量然后进行赋值,子窗口就能直接取到值了。
首先说我的ViewModel是用SimpleIoc注入的。
SimpleIoc.Default.Register<MenuViewModel>();
public MenuViewModel MenuViewModel
{
get
{
return ServiceLocator.Current.GetInstance<MenuViewModel>();
}
}
在页面中
DataContext="{Binding Source={StaticResource Locator},Path=MenuViewModel}"
这种写法只能说取巧。
当然我也不知道这种写法有没有大佬们做过,如有雷同,纯属巧合。哈哈哈哈
WPF MVVM 下窗口之间的传值相关推荐
- WPF MVVM下用户控件的Visibility属性绑定问题
现象:发现用户控件 通过 MVVM 绑定 Visibility 属性 没有效果,发现问题由下面代码产生: 绑定的 Visibility 属性没有效果, 注释该代码后 MVVM下绑定Visibility ...
- c# 子窗口与父窗口之间的传值
//首先定义两个Form,一个为Form1,一个为Form2,其中Form1作为父窗口,Form2作为子窗口//1.父窗口传值给子窗口//Form1中代码:public Form1(){Initial ...
- python多窗口传递信息,认识QT ----- 多窗口以及窗口之间的传值
在很多软件中,都有这样一个设定:点击菜单栏中的某一个选项,软件将弹出一个新的窗体,用户在该窗体上进行简单的设置,于是主窗体会根据设定做出相应的改变. 这次我将来尝试一下,具体任务如下: QMainWi ...
- Qt窗口之间传值和结构体数据
简单明了,看效果+看代码 主窗口向子窗口进行传值和传结构体数据 子窗口向主窗口进行传值和传结构体数据 子窗口界面 主窗口界面 dialog.h #ifndef DIALOG_H #define DIA ...
- C# WPF MVVM模式Prism框架下事件发布与订阅
01 - 前言 处理同模块不同窗体之间的通信和不同模块之间不同窗体的通信,Prism提供了一种事件机制,可以在应用程序中低耦合的模块之间进行通信,该机制基于事件聚合器服务,允许发布者和订阅者之间通过事 ...
- C# WPF MVVM模式Caliburn.Micro框架下事件发布与订阅
01 - 前言 处理同模块不同窗体之间的通信和不同模块之间不同窗体的通信,Caliburn提供了一种事件机制,可以在应用程序中低耦合的模块之间进行通信,该机制基于事件聚合器服务,允许发布者和订阅者之间 ...
- wpf mvvm模式下CommandParameter传递多参
wpf mvvm模式下CommandParameter传递多参 原文:wpf mvvm模式下CommandParameter传递多参 CommandParameter一般只允许设置一次,所以如果要传递 ...
- WPF MVVM从入门到精通1:MVVM模式简介
WPF MVVM从入门到精通1:MVVM模式简介 原文:WPF MVVM从入门到精通1:MVVM模式简介 WPF MVVM从入门到精通1:MVVM模式简介 WPF MVVM从入门到精通2:实现一个登录 ...
- WPF自学入门(十一)WPF MVVM模式Command命令 WPF自学入门(十)WPF MVVM简单介绍...
WPF自学入门(十一)WPF MVVM模式Command命令 在WPF自学入门(十)WPF MVVM简单介绍中的示例似乎运行起来没有什么问题,也可以进行更新.但是这并不是我们使用MVVM的正确方式.正 ...
最新文章
- pyqt5入门教程(七)
- 杭电1241java实现dfs
- SpringBoot整合MyBatis-Plus分页查询
- OpenCV相机校准camera calibration的实例(附完整代码)
- mysql 如何用一条SQL将一张表里的数据插入到另一张表 3个例子
- phpcmsV9网页http路由静态化设置——URL地址规则
- sharding-jdbc水平分库与垂直分库
- 格力电器上半年净利94.57亿元,同比增长48.64%
- html 图片移动动画,HTML5移动端图片左右切换动画DEMO演示
- stl之截取:以一段字符串截取字符串
- android仿微信图片编辑库,Android仿微信朋友圈添加图片
- html 前端分页代码怎么写,纯JavaScript实现的前端分页代码
- 乘坐民航客机能带多大容量充电宝
- java微信二维码登录
- win11电脑开移动热点,但是手机连不上
- substrate中打印调试信息的多种方式详解
- 服务器重启django项目
- 文件上传upload-labs第四关
- html语义化标签是什么,HTML语义化标签探析
- 一文搞懂lib中physical cell