Почему индексатор ячеек не может быть сопоставлен с const int? - PullRequest
0 голосов
/ 19 марта 2012

С этим кодом:

private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e)
        {
            const int TICKETSOURCE_COLUMN = 3;
            const int ABOUTSOMEID_COLUMN = 4;
            const int CATEGORYID_COLUMN = 5;
            const int CONTACTEMAIL_COLUMN = 6;

            textBoxTicketSource.Text = Convert.ToString(dataGridView1.CurrentRow.Cells[TICKETSOURCE_COLUMN].Value);
            textBoxAboutLLSID.Text = Convert.ToString(dataGridView1.CurrentRow.Cells[ABOUTSOMEID_COLUMN].Value);
            textBoxCategoryID.Text = Convert.ToString(dataGridView1.CurrentRow.Cells[CATEGORYID_COLUMN].Value);
            textBoxContactEmail.Text = Convert.ToString(dataGridView1.CurrentRow.Cells[CONTACTEMAIL_COLUMN].Value); 
        }

Я получаю сообщение об ошибке:

"Исключение System.NullReferenceException было обработано Сообщение = Ссылка на объект не установлена ​​на экземпляр объектаобъект. "

У меня есть два вопроса по этому поводу:

1) Почему это проблема / как мне сделать это вместо этого?

2) Является лиRowEnter () событие лучшее место, чтобы поместить этот код?

1 Ответ

4 голосов
/ 19 марта 2012

Здесь const int не проблема ...

Либо вы их неправильно пронумеровали, либо, что более вероятно, CurrentRow равно null

Разместите трассировку стека и просто используйте отладчик.

...