2015-01-04 4 views
0

У меня есть этот код, который я использую для заполнения поля со списком в datagridviewPopulate выпадающий в DataGridView для новых строк

Dim dgvcc As DataGridViewComboBoxCell 
dgvcc = DataGridView2.Rows(0).Cells(2) 
dgvcc.Items.Add("comboitem1") 
dgvcc.Items.Add("comboitem2") 

он работает нормально, но когда новая строка добавляется в datagridview поле со списком не popuated с данными - я хочу, чтобы быть заполнены теми же данными для каждой строки

+0

вам нужно больше написать о вашей настройке - как добавить строки, источник данных и т. Д. –

+1

Вы заполняете только ячейку в первой строке. Используйте свойства DataGridViewComboBoxColumn и 'DataSource' – Fabio

ответ

1

Вместо того, назначая выборы в индивидуальном DataGridViewComboBoxCell (который будет только для этой конкретной ячейки), назначить выборы в вместо всего DataGridViewComboBoxColumn. Это будет означать, что каждая ячейка в столбце будет использовать одни и те же параметры выбора.

With DirectCast(DataGridView2.Columns(2), DataGridViewComboBoxColumn) 
    .Items.Add("comboitem1") 
    .Items.Add("comboitem2") 
End With 

Обратите внимание, что я предполагаю, что столбец 2 ваша колонка со списком, так это то, что используется в вашем фрагменте кода.

+1

Если столбец предопределен (создан в конструкторе), то столбец можно использовать, генерируя переменную' Me.MyDataGridViewComboBoxColumn' - без преобразования и индексирования hardcoding – Fabio

+0

то, что должно быть добавлено до .Add ? – charlie

+0

@charlie - В приведенной выше части используется блок 'With',' .Add' добавляется к тому, что определено в инструкции 'With'. –

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