【发布时间】:2011-09-21 21:31:32
【问题描述】:
我在使用具有可观察集合的 Silverlight 数据网格时遇到问题。我创建了一个 Silverlight 数据网格,从 WCF RIA 服务填充了一个可观察的集合,并将一个集合绑定到网格。它第一次工作正常,但是当我更改项目源内容时,网格中的数据不会刷新。当我双击数据网格单元格时,会显示内容。我可能缺少一些基本的属性设置。任何人都可以帮忙吗?
示例代码:
App.BPIContext.Load(App.BPIContext.GetWellFieldListValuesQuery()).Completed += DataSource_WellFieldDataListValueLoadComplete;
ObservableCollection<ScheduleWellCustomFields> _userWellCustomFields = new ObservableCollection<ScheduleWellCustomFields>();
void DataSource_WellCustomFieldsLoadComplete(object sender, EventArgs e)
{
_userWellCustomFields.Clear();
App.BPIContext.ScheduleWellCustomFields.ToList().ForEach(c => _userWellCustomFields.Add(c));
this.dtGridDrillingEngineer.ItemsSource = _userWellCustomFields;
}
【问题讨论】:
-
您是仅更改了 ObservableCollection 的内容(即添加、删除)还是在数据网格上设置了 ItemsSource 属性?也许你会期望你的数据发生变化。确保在这种情况下抛出 PropertyChanged。
-
我同意 Joachim Kerschbaumer 的观点,是否在 ScheduleWellCustomFields 的属性中设置了 NotifyPropertyChanged?
标签: silverlight datagrid