Индекс за пределами диапазона. DataGridView - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! В общем суть такая, я ввожу в датагрид данные. а теперь по нажатию кнопки хочу получить эти введенные значения в массив. На первом проходе данные записываются нормально, а вот на втором проходе уже появляется ошибка : Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции. Смотрю в дебагере а оказывается что Rows на втором проходе равен 0, хотя при первом проходе был равен реальному числу строк, например 3. Почему так происходит? Как заставить его не обнулять Rows?
int RowsCount = dataGridView1.RowCount;            
            for (int i = 0; i < RowsCount; i++)
            {              
                year_datagrid[i] = this.dataGridView1.Rows[i].Cells[0].Value.ToString();              
                
            }
Ладно, другой вопрос, как получить значение каждой ячейки

столбца

Решение задачи: «Индекс за пределами диапазона. DataGridView»

textual
Листинг программы
foreach(DataGridViewRow dt in dataGridView1.Rows)                
                for (int i = 0; i < RowsCount; i++)
                {
                    {                        
                        year_datagrid[i] = Convert.ToString(dt.Cells[i].Value);                  
                    }
                }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5
Похожие ответы