2016-01-26 1 views
-1
btn_Click() 

For Each row As DatagridviewRow In DGV.Rows 
    row.Cells("Column2").Value = "Boy " 
    row.Cells(Column2").Value = "Girl" 
    row.Cells(Column2").Value = "Boy" 
    row.Cells(Column2").Value = "Girl" 
    row.Cells(Column2").Value = "Girl" 
Next 

Это код, но когда я выполняю код, он вставляет только первое значение, которое является «Мальчиком». Но я хочу вставить разные значения.Как вставить разные значения в определенную колонку DataGridView

+0

вашего кода, кажется, опечатки с удаление информации двойные кавычки. Непонятно, почему вы пишете такой код: зачем устанавливать значение «Мальчик», чтобы изменить его рядом с «Девушка». Указывает, что один и тот же столбец преднамерен? Четыре пробела для примеров кода отступа в переполнении стека. – LarsTech

ответ

0

Поскольку это неполный код, сложно понять, что происходит. Предполагая, что ваш «Следующий» после последней строки. Цвета ... Вы повторяете один и тот же столбец на каждой итерации цикла. Таким образом, вы просто переписываете данные повторно. Вы должны вызывать только «row.Cells» («Column2»). Значение = «x» один раз за итерацию цикла. Для определения необходимости написания «Boy» или «Girl» в ячейке вам понадобится логика.

Если вы замените его на что-то вроде ниже (опять же, вам придется выяснить логику, я собираюсь использовать некоторую логику «заполнителя», чтобы получить рабочий код для вас), он будет вести себя так, как ожидалось.

For Each row As DataGridViewRow In DGV.Rows 
    If DGV.Rows.IndexOf(row) Mod 2 = 0 Then 
     row.Cells("Column2").Value = "Boy" 
    Else 
     row.Cells("Column2").Value = "Girl" 
    End If 
Next 

Итак, вам нужно будет определить ваш If/Else или Case или любую логику, и изменить это, но я думаю, что это должно направить вас в правильном направлении.