首页 新闻 搜索 专区 学院

关于wpf datagrid 绑定后修改不及时更新

0
悬赏园豆:200 [已解决问题] 解决于 2011-05-03 19:44

一个datagrid绑定了ObservableCollection<T> TSource一个数据源, 当我修改数据源某个item的数据时例如TSource[5].Name="XXX"; 这时候要点击datagrid我改变数据的那行 现在便是第六行 点击绑定Name的row进入编辑状态celledit再进入普通状态cell UI上datagird数据才会刷新, 请问怎么让datagrid 再我修改TSource的item后立即刷新,不能使用datagrid.ItemSource=null,datagrid.ItemSource=TSource 数据比较多。

petrelli的主页 petrelli | 初学一级 | 园豆:3
提问于:2011-05-01 17:03
< >
分享
最佳答案
1
BindingExpression b = textBox1.GetBindingExpression(TextBox.TextProperty);
b.UpdateTarget();

获取绑定信息,然后强制其更新目标..

这个我试过了,Textbox的文本绑定至一个属性,既不实现INotifyPropertyChanged.也不是依赖项属性..

更改属性后,强制刷新目标就ok

收获园豆:200
OX | 菜鸟二级 |园豆:480 | 2011-05-03 14:15
好使
petrelli | 园豆:3 (初学一级) | 2011-05-03 19:44

@petrelli: 请问,怎么使用?怎么有个textbox?

不及格本科生 | 园豆:215 (菜鸟二级) | 2011-11-15 12:07
其他回答(3)
-1

修改及时更新用依赖属性,xaml中添加Mode=TwoWay,具体可以参考MSDN http://msdn.microsoft.com/en-us/library/ms754130.aspx 中的Data

Chenkun | 园豆:806 (小虾三级) | 2011-05-01 18:54
不是这个问题 datagrid不是有两种状态么, 编辑模式的已经改了 但是普通状态的没改,要手动点那行进入编辑状态再回来就好了,我想知道怎么让普通状态下的也立即更新。
支持(0) 反对(0) petrelli | 园豆:3 (初学一级) | 2011-05-01 21:55
1

请问,怎么使用?怎么有个textbox?

不及格本科生 | 园豆:215 (菜鸟二级) | 2011-11-15 12:06
-1

petrelli,这个问题最终是怎么解决的?

luzy | 园豆:122 (初学一级) | 2013-01-07 13:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册