我正在使用带有数据流Windows Bindingsouce的Infragistics UltraGrid。 在更改时,我向Bindingsouce提供数据并调用UltraGrid的DataBinding。 Bindingsouce的数据值发生了变化,但这并未反映在UltraGrid中。
答案 0 :(得分:2)
您的绑定源必须引发某些事件才能触发网格刷新。例如,如果您使用的是BindingList
,则应该引发ListChanged
事件。
答案 1 :(得分:2)
另外,确保您用作绑定对象的任何类都实现了INotifyPropertyChanged,这样当您在运行时更新BindingObject时,它将被引导到BindingSource,最终被Grid拾取。
即:
BindingList<Foo> lstItems = new BindingList<Foo>;
BindingSource bso = ;
bso.DataSource = lstItems;
Grid.DataSource = bso;
public class Foo : INotifyPropertyChanged
还取决于您是否在Grid之外更改集合(在运行时,因为如果您这样做,则需要使用BindingList<T>
并将其分配给BindingSource