Невозможно установить значение DataGridViewComboBoxColumn без предварительного его отображения. - PullRequest
0 голосов
/ 17 марта 2019

У меня есть представление данных в приложении Winforms, в которое я добавляю DataGridViewComboBoxColumn. Сетка данных не отображается (на другой вкладке), когда программа запускается и пытается установить значение DgvComboBox. В моем случае кажется, что значение поля со списком DataGridView не может быть установлено, пока я не перейду на вкладку, которая содержит Dgv, и окрашивается. Затем я могу вернуться к исходной вкладке и установить комбинированный список на весь день.

    dgvRequirements.DataSource = ReqDB.GetNewRequirements()

    Dim col As New System.Windows.Forms.DataGridViewComboBoxColumn
    col.DropDownWidth = 400
    col.DataPropertyName = "Responsible"
    col.Name = "Responsible"
    col.HeaderText = "Responsible"
    col.Items.Add(" ")


    col.DataSource = activeEmployees
    col.DisplayMember = "Name"
    col.ValueMember = "empId"

    col.DropDownWidth = 400


    dgvRequirements.Columns.Insert(2, col)

Проблема в том, что я пытаюсь установить значение столбца программно.

dgvRequirements.Rows(index).Cells("Responsible").Value = cboDefault.SelectedValue

DatagridView находится на другой вкладке. Независимо от того, сколько раз я пытаюсь установить значение столбца ComboBox, он не будет установлен, пока ПЕРВЫЙ не перейду на вкладку, где включено отображение данных. Как только Dgv будет нарисован, и я вернусь, чтобы установить значение, тогда значение может быть установлено без каких-либо проблем.

...