我可以隐式地将我的DGV单元格值设为非空吗?

时间:2012-09-21 17:08:54

标签: c# winforms datagridview nullreferenceexception

刷新我的DGV内容(不是数据绑定,填充在代码中)时,我有这个代码来检索单元格中的值:

DataGridViewRow desiredRow = dataGridViewPlatypi.Rows[rowNum];
return desiredRow.Cells[colNum].Value.ToString();

只要单元格中有值,它就可以正常工作;如果单元格为空,则在第二行上“空引用异常|对象引用未设置为对象实例”失败。

我可以解决这个问题,我给每个单元格一个“0”或“”(空格),但我宁愿不这样做。有没有更优雅的方法处理这个(空白单元格)条件?

1 个答案:

答案 0 :(得分:1)

您可以使用null-coalescing operator测试单元格中的空值,如果发现该值为null,则返回您选择的字符串。否则返回单元格的字符串值:

DataGridViewRow desiredRow = dataGridViewPlatypi.Rows[rowNum];
return (desiredRow.Cells[colNum].Value ?? "empty").ToString();