Как обновить Infragistics UltraGrid?
-
19-09-2019 - |
Вопрос
Я использую 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
Также зависит от того, меняете ли вы коллекцию вне Grid (во время выполнения, потому что если вы это сделаете, вам нужно будет использовать BindingList<T>
и назначьте его BindingSource