установить значение столбца Datagirdviewcombobox в Vb.net - PullRequest
0 голосов
/ 17 июня 2011

У меня есть сетка данных с двумя столбцами datagridviewcombo, один столбец является динамическим заполнением, а другой имеет фиксированные жестко закодированные значения. Проблема в том, что я не могу установить значение динамического GridViewComboBox, когда я пытаюсь установить его, генерирует ошибки продолжения.

System.FormateException: DataGridViewComboBoxCell Значение недопустимо.

Мой код для загрузки сетки:

   Dim dt As DataTable
    dt = GetDataTable("Select valuecol,displayCol From mytable")  'GetDataTable gives me datatable
    cmbAntibiotics.DataSource = dt
    cmbAntibiotics.DisplayMember = "Antibiotics"
    cmbAntibiotics.ValueMember = "AntibioticsID"
    Dim Index As Integer

    Dim dgr As DataGridViewRow
    For Each dr As DataRow In dtFromDB.Rows 'This datatable is filled with database
        Index = dtFromDB.Rows.Count - 1
        GRDAntimicrobials.Rows.Add()
        GRDAntimicrobials.Rows(Index).Cells("cmbAntibiotics").Value = dr("AntibioticsID").ToString   'At this point it shows value (1,2,3) rather then showing its display members
        GRDAntimicrobials.Rows(Index).Cells("AntibioticsStatus").Value = dr("AntibioticsStatus").ToString
    Next

Пожалуйста, помогите мне

1 Ответ

0 голосов
/ 17 июня 2011

Кажется, что вы пытаетесь присвоить значение тому, что есть в ячейке, а не создать экземпляр объекта, который находится в ячейке, а затем назначить его значение.Я бы попробовал что-то вроде этого:

Dim vComboBoxColumn As DropDownList = DirectCast(GRDAntimicrobials.Rows(index).Cells("cmbAntibiotics"))
vComboBoxColumn.Value = dr("AntibioticsStatus").ToString
...