2010-03-16 4 views
1

У меня есть ProbationComboBox с SelectedValue, связанный с RegistrationBindingSource, и DisplayMember, связанный с ProbationBindingSource.DataBinding: ComboBox.Text не обновляется при изменении SelectedValue?

Когда я звоню RegistrationBindingSource.ResetCurrentItem(), свойство SelectedValue обновляются с правильным значением из RegistrationBindingSource.ProbationID(), но Text свойства не обновляется.

Вот как я настройка привязки данных на ComboBox:

ProbationComboBox.DataBindings.Add(New System.Windows.Forms.Binding(_ 
    "SelectedValue", Me.RegistrationBindingSource, "ProbationID", True)) 

ProbationComboBox.DataSource = Me.ProbationBindingSource 
ProbationComboBox.DisplayMember = "probation" 
ProbationComboBox.ValueMember = "id" 

Пока я не могу понять проблему с моим обязательным, я использую это как временное решение:

DataRow row = CType(ProbationBindingSource.Current, DataRowView).Row 
ProbationComboBox.Text = CType(row, RootNamespace.DataSet.probationRow).probation 

Есть идеи? Благодаря!

ответ

1

Проблема связана не с привязкой данных к RegistrationBindingSource, а с моими данными и процедурами. Вот что происходит:

  1. Я бы очистить Text свойство всех ComboBox управления до рекордно нагрузки.

  2. ProbationBindingSource.Current обновлено либо по привязке данных, либо путем ручной установки свойства ProbationComboBox.SelectedValue.

  3. В большинстве случаев студенты не проходили стажировку, а значение ProbationBindingSource.Current было обновлено с тем же значением, что и раньше. В результате ProbationBindingSource.Position не изменилось, и свойство Text не обновлялось.

Мои окончательные проверки решения, если в данном SelectedValue будет обновляться до очистки Text собственности.

1

Как насчет вызова ResetBindings?

Файлы справки говорят, что выполнение этого «приводит к тому, что элемент управления привязан к BindingSource, чтобы перечитать все элементы в списке и обновить отображаемые значения».

+0

Я пробовал это, не повезло. Я даже попытался передать True для аргумента, чтобы заставить схему перечитывать, но это не помогло. – Rob

Смежные вопросы