Silverlight 按钮绑定到Code Behind 事件

Silverlight 按钮绑定到Code Behind 事件,第1张

概述在Silverlight开发中,我们一直强调MVVM模式的好处。但很多时候,MVVM模式无法解决或者说很难解决 从ViewModel 到 View 的事件传递。(Event to Command) 使用这个家伙的MVVM Light 可以实现,但是要经过很多的波折。对此很多人也有争议:牺牲那么多时间去保持一个清洁干净的XAML意义是否有那么大?   我的这个例子要实现的内容: 1. 在主窗体(Ma

在Silverlight开发中,我们一直强调MVVM模式的好处。但很多时候,MVVM模式无法解决或者说很难解决 从viewmodel 到 VIEw 的事件传递。(Event to Command)

使用这个家伙的MVVM Light 可以实现,但是要经过很多的波折。对此很多人也有争议:牺牲那么多时间去保持一个清洁干净的XAML意义是否有那么大?

 

我的这个例子要实现的内容:

1. 在主窗体(MainPage)按下DataGrID中绑定的按纽;

2.按钮把DataGrID中的产品编号传递到一个子窗体,子窗体启动,并可以显示(修改)这个产品编号;

3.按下保存,子窗体关闭,并把修改过的产品编号传递回主窗体(MainPage)。

4.主窗体刷新

 

我们知道:1,2,3 步骤用MVVM 是很好实现的,把按钮的命令通过ICommand传递到viewmodel执行,在viewmodel打开子窗体,并修改数据,没有问题。但如何通知主窗体刷新?我这里提到的不仅仅是刷新这个问题,可能还有其他的动作,比如数据更新后,更换主窗体的一张图片或改变主窗体某个控件的尺寸等等。

所以第4个步骤用MVVM是比较困难的。

 

如果我们直接把按钮绑定到主窗体的Code Behind中,就很好解决这个问题了。

 

主窗体DataGrID的代码:

 

主窗体 Code Behind 代码:

 

 

直接通过绑定,在主窗体打开子窗体,通过委托事件,接收子窗体修改过的产品编号,控制权又回到了主窗体,

就可以做任何你想做的事情了,世界又一片清静了!

 

完成代码下载: http://www.dengfeng.org/soft/MVVM_PassCommand_dengfengsoft.zip

总结

以上是内存溢出为你收集整理的Silverlight 按钮绑定到Code Behind 事件全部内容,希望文章能够帮你解决Silverlight 按钮绑定到Code Behind 事件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1075538.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存