C# 为什么可以';单元格索引器是否映射到常量int?

C# 为什么可以';单元格索引器是否映射到常量int?,c#,.net,datagridview,datagridviewcolumn,C#,.net,Datagridview,Datagridviewcolumn,使用此代码: private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e) { const int TICKETSOURCE_COLUMN = 3; const int ABOUTSOMEID_COLUMN = 4; const int CATEGORYID_COLUMN = 5; con

使用此代码:

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) rownenter()事件是放置此代码的最佳位置吗?

此处的
常量int
不是问题所在

您可能对它们进行了错误编号,或者更可能的是,
CurrentRow
null


发布stacktrace,只需使用调试器即可

这里的
常量int
不是问题

您可能对它们进行了错误编号,或者更可能的是,
CurrentRow
null


发布stacktrace,只需使用调试器即可

是,CurrentRow在第一行Enter()上为空;因此,我将代码移动到CellClick()事件,它工作正常;因此,我将代码移动到CellClick()事件,它工作得很好。