У меня есть сводка, связанная с БД и отлично работающая.Комбинированное сохранение старого значения индекса
Однако, когда пользователь добавляет значение в таблицу, к которой привязан combobox, combobox сохраняет старое значение и добавляет текущие элементы в таблицу.
В этом случае таблица первоначально содержала только одну запись («2012»). Пользователь добавил 2013, поэтому в таблице теперь отображаются две записи («2012» и «2013»), но в поле со списком отображаются три записи («2012», «2012» и «2013»). UNTIL Я выхожу из приложения и перезапускаю, и в этом случае он правильно отражает только две записи в таблице («2012» и «2013»).
Я пробовал cboYear.Datasource = Nothing
, cboYear.items.clear
, cboYear.DataBindings.clear
и ничего не работает.
Вот код:
Try
Dim asql As String = ("SELECT * FROM YearsAvailable ORDER BY CurrentYear")
Dim da As New OleDbDataAdapter(asql, con)
da.Fill(ds)
cboYear.ValueMember = "CurrentYear"
cboYear.DataSource = ds.Tables(0)
cboYear.SelectedIndex = 0
CurrentYear = cboYear.Text
Me.Text = "MSD of Perry Township Compensation Model: " & CurrentYear
Catch ex As Exception
MsgBox("ERROR filling the YEAR control: " & ex.Message.ToString)
End Try
Эй, вы должны очистить свой набор данных или создать новый экземпляр с каждым связываясь с dataadapter.'Dim йза как новые Dataset'.Hope это помогает –