首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Silverlight MVVM绑定似乎不起作用

Silverlight MVVM绑定似乎不起作用
EN

Stack Overflow用户
提问于 2010-03-21 05:11:45
回答 1查看 237关注 0票数 1

构建我的第一个some应用程序(Silverlight4 RC),并且有一些我不理解的问题。

有一个WPF背景,我不知道这里发生了什么:

ViewModel有几个属性,其中一个称为SelectedRecord。这是一个get only属性,定义如下:

代码语言:javascript
代码运行次数:0
运行
复制
    public Culture SelectedRecord { 
get { return culturesView.View.CurrentItem as Culture;  } }

正如您所看到的,它获取CollectionViewSource (称为culturesView)的当前值。因此,如果我选择一个区域性,SelectedRecord (直接从CollectionViewSource中获取一个值)就会像预期的那样。(实际上有一个绑定到CollectionViewSource的datagrid控件,因此可以更改所选的项)

好的。现在转到视图。有几个视图可以访问这个ViewModel,特别是有一个视图显示了前面提到的属性SelectedRecord (让我们称之为EditView)的值。为了显示这个命令,有一个按钮(它的EditView属性绑定到ViewModel中的一个ICommand ),它(第一次)按预期工作。

这意味着:

第一次尝试:我选择一条记录,切换到EditView,结果:显示选定的记录值(正如预期的那样!!)。

第二次尝试:切换回datagrid,选择另一条记录,切换到EditView,结果:再次显示上一条显示的记录的值!为什么??

首先,我以为SelectedRecord没有设置正确的值,但我错了:它有正确的值!所以它应该被显示出来!?

我遗漏了什么?在WPF中,这是可行的!

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-21 05:51:04

当View值更改时,具有SelectedRecord的ViewModel必须调用RaisePropertyChanged("SelectedRecord"),以便将更改通知给绑定到它的任何视图。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2484789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档