У меня есть ComboBox, связанный с BindingSource, который, в свою очередь, привязан к таблице Linq.ComboBox и Linq to Sql для Winforms
Кроме того, ComboBox заполняется из источника данных, который представляет собой таблицу Linq.
Я хочу присвоить новое значение одному из свойств BindingSource.Current всякий раз, когда пользователь выбирает элемент в ComboBox. Я понял из MSDN, что мне нужно использовать событие SelectionChangeCommitted ComboBox.
Вот псевдокод:
myCB_SelectionChangeCommitted(...)
{
var val = myCB.SelectedValue; //I get selected value from user.
var q = bindingSource.Current as XYZ;
//Ommitted validation code to check if q is okay to work with
q.SomeProperty = NewCalculatedValue; //SomeProperty is bound to label
//After above line, myCB.SelectedValue is lost!
//It seems that this event fires **before** selected value
//is written to bound data source
}
Должен ли я использовать myCB.DataBindings [0] .WriteValue(); ? Или есть лучший способ?
Заранее спасибо.