Я пытаюсь сделать то, что я считаю, это не сложно, но еще - прямой подход не кажется, работает ...выпадающий ручной вязки
Я создал пользовательский элемент управления, и сковал его к DataTable, то я создан новый Binding и переплетены другой объект того же комбо (SelectedValue быть более точным) следующим образом:
this.cboValue.DataSource = dt;
this.cboValue.ValueMember = "ID";
this.cboValue.DisplayMember = "Text";
valueBinding = new Binding("SelectedValue", value, "Value", false, DataSourceUpdateMode.OnPropertyChanged);
this.cboValue.DataBindings.Add(valueBinding);
valueBinding.BindingComplete += new BindingCompleteEventHandler(valueBinding_BindingComplete);
Это работает прекрасно обновление объекта, когда это необходимо. Затем мне нужно было использовать другой подход для привязки, поскольку некоторые элементы управления нужно было заполнять вручную, поэтому я создал новый бизнес-объект и попытался привязать к нему элемент/массив этого объекта.
Дело в том, что при установке значения ValueMember я получаю DBNull.Value вместо значения, к которому я стремился при настройке привязки.
Мне удалось создать обходной путь - создание нового datatable для этого списка/массива бизнес-объекта и привязать его к таблице, но все же это кажется суматохой.
Кто-нибудь когда-либо пробовал что-то подобное?