问题描述
for(inti=0;i<dataGridView1.Rows.Count;i++){Objectstr=dataGridView1[2,i].Value.ToString();if(str!=null){if(str.ToString()=="H"){dataGridView1[3,i].Style.ForeColor=Color.Red;}}}确实有null值,要如何new一个?
解决方案
解决方案二:
Objectstr=dataGridView1[2,i].Value.ToString();避免定义Object类型的变量,你应该直接定义成string类型先判断dataGridView1[2,i].Value!=null再给它赋值,否则让它是默认值(string.Empty)
解决方案三:
按你的代码修改的话,最简单的办法是这样做:Objectstr=dataGridView1[2,i].Value不要在判断null值前执行ToString
解决方案四:
楼上正解。
解决方案五:
/*object类型的变量,如果为null,必然是未初始化的引用,你的代码把object类型(dataGridView1[2,i].Value)的值进行ToString如果dataGridView1[2,i].Value为null,必然会抛出异常。你的判断可以改判断dataGridView1[2,i].Value是否为null,做相应的处理比如stringstr=dataGridView1[2,i].Value==null?String.Empty:dataGridView1[2,i].Value.ToString();if(!String.IsNullOrEmpty(str)){//你的业务逻辑}*/Objectstr=dataGridView1[2,i].Value.ToString();