У меня есть форма Windows с Devexpress GridControl, чей источник данных связан с FleetPreference.ManufacturerList
, где ManufacturerList
- это BindingList<ManufacturerItem>
, а FleetPreference
- это публичное свойство в форме.
т.е.
public class FleetPreference : FleetPreferenceBase
{
////
////
////
}
public class FleetPreferenceBase
{
public BindingList<ManufacturerItem> ManufacturerList { get; set; }
}
public class Form1
{
public FleetPreference FleetPreference { get; set; }
public BindingList<ManufacturerItem> ManufacturerList { get; set; }
public Form1()
{
this.gridControl1.DataSource =
FleetPreference.ManufacturerList; // doesn't auto-update grid
this.gridControl1.DataSource =
ManufacturerList; // does auto-update grid
}
}
При добавлении нового элемента в коллекцию путем вызова FleetPreference.ManufacturerList.AddNew()
это добавляет новый элемент в исходный список, но источник данных GridControl не обновляется.
После некоторой проверки, когда я добавляю в форму новое свойство BindingList<ManufacturerItem>
и привязываю элемент управления к этому свойству, автообновление работает, как и ожидалось.
Есть ли причина, по которой использование вложенного свойства не будет работать должным образом с автоматическим предоставлением событий обновления обратно в GridControl?