I have an UltraComboEditor bound to a BindingList of strings. When a new item is added to the binding list the combo picks up the new item. However, if I modify and existing item in the binding list the combo does not pick up the change. Shouldn't the combo get all list changes of the underlying BindList?
Thanks.
Yes, it should work for either one.
Thanks for your response. I will submit a bug report to Customer Support. However, I think I should mention that this is an UltraComboEditor not an UltraCombo. Should this still hold ttrue? To workaround the issue I am handling the BindingList.ListItemChanged event and calling comboEditor.DataBind to update the combos value list items.
Another workaround would be to wrap your strings in a class that implements INotifyPropertyChanged, such as:
private class MyString : INotifyPropertyChanged{ private string val; public event PropertyChangedEventHandler PropertyChanged; public MyString(string val) { this.val = val; } public string Val { get { return this.val; } set { if (this.val == value) return; this.val = value; if (this.PropertyChanged != null) this.PropertyChanged(this, new PropertyChangedEventArgs("Val")); } }}
Now you would have a BindingList<MyString>, and since the BindingList hooks the PropertyChanged of any items that implements INotifyPropertyChanged, this will cause the combo to be updated.
-Matt
Yes, I think it should. You should Submit an incident to Infragistics Developer Support.
You can probably work around this by calling combo.Rows.Refresh(ReloadData)