如何刷新Infragistics UltraGrid?

时间:2009-11-10 12:01:20

标签: infragistics ultragrid

我正在使用带有数据流Windows Bindingsouce的Infragistics UltraGrid。 在更改时,我向Bindingsouce提供数据并调用UltraGrid的DataBinding。 Bindingsouce的数据值发生了变化,但这并未反映在UltraGrid中。

2 个答案:

答案 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

see MDSN article here

还取决于您是否在Grid之外更改集合(在运行时,因为如果您这样做,则需要使用BindingList<T>并将其分配给BindingSource