求助!!!

wq34762707 2012-04-19 03:25:49
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
try
{
string s;
if (e.ColumnIndex==7)
{
s = dataGridView1.Rows[e.RowIndex].Cells[7].Value.ToString();
if (s == "√")
{
s = "";
}
else
{
s = "√";
}
dataGridView1.Rows[e.RowIndex].Cells[7].Value = s;
}
if (e.ColumnIndex == 8)
{
s = dataGridView1.Rows[e.RowIndex].Cells[8].Value.ToString();
if (s == "√")
{
s = "";
}
else
{
s = "√";
}
dataGridView1.Rows[e.RowIndex].Cells[8].Value = s;
}
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
}

当s = dataGridView1.Rows[e.RowIndex].Cells[7].Value.ToString();
的时候可以执行。当 s = dataGridView1.Rows[e.RowIndex].Cells[8].Value.ToString();
的时候报错,报错内容:未将对象引用设置到对象的实例。


请问该怎么解决呢??本人新手
...全文
82 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyifei123 2012-04-19
  • 打赏
  • 举报
回复
支持二楼。
vinjent 2012-04-19
  • 打赏
  • 举报
回复
dataGridView1.Rows[e.RowIndex].Cells[8].Value可能是null
所以你不能用
s = dataGridView1.Rows[e.RowIndex].Cells[8].Value.ToString();
為了避免dataGridView1[Rows, Columns]為空,最好使用
s=Convert.ToString(dataGridView1[Rows, Columns].Value);
csrwgs 2012-04-19
  • 打赏
  • 举报
回复
检查dataGridView1.Rows[e.RowIndex].Cells[8]是不是null

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧