Как обновить Infragistics UltraGrid? - PullRequest
2 голосов
/ 10 ноября 2009

Я использую Infragistics UltraGrid с данными Windows Bindingsouce. При изменении я передаю данные в Bindingsouce и вызываю DataBinding в UltraGrid. Значение в базе данных Bindingsouce изменяется, но это не отражается в UltraGrid.

Ответы [ 2 ]

2 голосов
/ 07 апреля 2011

Кроме того, убедитесь, что любой класс, который вы используете в качестве связующего объекта, реализует INotifyPropertyChanged, чтобы при обновлении BindingObject во время выполнения он направлялся в BindingSource, который в конечном итоге выбирается Grid.

т.е.:

BindingList<Foo> lstItems = new BindingList<Foo>;
BindingSource bso = ;
bso.DataSource = lstItems; 
Grid.DataSource = bso; 

public class Foo :  INotifyPropertyChanged

см. Статью MDSN здесь

Также зависит, если вы изменяете коллекцию вне Grid (во время выполнения, потому что если вы это делаете, вам нужно использовать BindingList<T> и назначить ее для BindingSource

2 голосов
/ 10 ноября 2009

Ваш источник привязки должен вызвать какое-то событие, чтобы вызвать обновление сетки. Например, если вы используете BindingList, это должно вызвать событие ListChanged.

...