MVVM中CheckBox与Button联合起来执行设定命令

zgl263885058 2017-05-24 09:59:49
如图:View中有一个CheckBox和一个Button,vm(datacontext)中有个通知属性(Bool_IsChecked)绑定checkbox的IsCheck属性值,Button绑定了一个Command(Command_OK)。
其中:CheckBox的绑定Mode是OneWay的。
问题是:我希望在单击“确认更改”这个Button后,再将这个CheckBox的IsChecked的值传给后台的通知属性(Bool_IsChecked)。
如果Mode模式设定为默认值则会实时更新,这就导致我的确认按钮没有作用了。请问要如何实现?

补充:这个也面有5个checkbox,在一个stackpanal中,这个按钮要怎么样才能实现执行更改后台数据的作用啊?可以把zhegestackpannal传到button的commandparameter中,在后台代码通过这个stackpanal可以访问这些checkbox吗?


...全文
901 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
乱臣贼子 2017-08-10
  • 打赏
  • 举报
回复
你的提问好难搞懂的!问题写的很模糊,不过仔细看你的问题,大概理解到你是想在点击按钮之后再更改CheckBox的IsChecked属性,而不是直接改。既然你都绑定了CheckBox的IsChecked属性。那么使用默认的双向绑定当然会直接修改Bool_IsChecked了。你这是正确的啊,你点击按钮的时候,把Bool_IsChecked的值进行保存不就行了? 为啥使用了MVVM模式,却还是以Winform的思想在编程呢? 如果你不适用MVVM模式,直接点击按钮在去获取CheckBox的IsChecked属性,就可以实现你要的效果,不过你不觉得很别扭么? 你在做WPF开发,使用的是MVVM模式,可是思想却还是Winform的思想。。
JimCarter 2017-05-25
  • 打赏
  • 举报
回复
笨方法: IsChecked绑定到Bool_IsChecked2上,mode是twoway或者onewaytosource。 Button的command里面设定Bool_IsChecked=Bool_IsChecked2。
  • 打赏
  • 举报
回复
你是想点击按钮之后才引用CHeckBox的设置吧?那你就不要一开始就将绑定应用,而是点击按钮只后再SetBinding,这样绑定只有在点击按钮后才有效果。
exception92 2017-05-24
  • 打赏
  • 举报
回复
这里只有我在坚守阵地。
zgl263885058 2017-05-24
  • 打赏
  • 举报
回复
你们快快回帖a,结账啦,随便说两句!
zgl263885058 2017-05-24
  • 打赏
  • 举报
回复
stackpanel.FindName("checkbox的Name")
zgl263885058 2017-05-24
  • 打赏
  • 举报
回复
使用Commandparameter传递checkbox的ischeck值!对吧~

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧