Вопрос

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

Это было полезно?

Решение

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

Другие советы

Кроме того, убедитесь, что любой класс, который вы используете в качестве объекта привязки, реализует 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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top