Ошибка при работе с программой: Ссылка на объект не указывает на экземпляр объекта

143
01 января 2020, 19:50

При работе с той частью программы, за которую отвечает этот код, выскакивает исключение "Ссылка на объект не указывает на экземпляр объекта." C# учу недавно, с такой ошибкой столкнулся впервые. Ниже часть кода с выделенной строкой с ошибкой:

        for (var i = 0; i < dataGridView1.Rows.Count; i++)
        {
            string subj;
         !! subj = dataGridView1.Rows[i].Cells["ВидЗанятий"].Value.ToString().Trim();
            if ((subj == "Пр") || (subj == "Лек") || (subj == "Лаб"))
            {
                textBox1.Text += "Известный тип" + "\r" + "\n";
            }
            else
            {
                textBox1.Text += "Неизвестный тип занятий" + "\r" + "\n";
            }                
        }
Answer 1

У вас проблема в том что, значение в ячейке не установлено, вам необходимо сделать следующее:

for (var i = 0; i < dataGridView1.Rows.Count; i++)
{
    var cell =dataGridView1.Rows[i].Cells["ВидЗанятий"].Value;
    if(cell!=null)
    {
         subj =cell.ToString().Trim();
         if ((subj == "Пр") || (subj == "Лек") || (subj == "Лаб"))
        {
            textBox1.Text += "Известный тип" + "\r" + "\n";
        }
        else
        {
            textBox1.Text += "Неизвестный тип занятий" + "\r" + "\n";
        }                                       
    }
    else
     {
         textBox1.Text += "Пустое значение" + "\r" + "\n";
     }
}

В результате ваша проблема должна исчезнуть.

READ ALSO
Invoke метода из стартового Appdomain

Invoke метода из стартового Appdomain

Создал новый Appdomain,загрузил в него сборкуТеперь нужно вызвать код из метода в в основном Appdomain

129
Как сделать запрос на удаление?

Как сделать запрос на удаление?

Подскажите, как удалить определенные строки в базе данных, если они просрочились на 1 день

149
Некорректная обработка IndexOf или же нет?

Некорректная обработка IndexOf или же нет?

Данный код возвращает 0, хотя по документации должен возвращать -1Я что-то не правильно делаю? Версия

133
Bluetooth low energey с чего начать

Bluetooth low energey с чего начать

Есть цель создать приложение, под heart rate monitor, который работает по BLEВ идеале хочу написать на C#

114