C# 如何检查DataGridView中是否存在单元格?
我有一个静态方法来检查给定列的和。我在事件C# 如何检查DataGridView中是否存在单元格?,c#,datagridview,C#,Datagridview,我有一个静态方法来检查给定列的和。我在事件RowsAdded上使用它,但我得到以下错误: System.NullReferenceException was unhandled Message=Object reference not set to an instance of an object. 这是我的密码,请告诉我哪里错了 public static decimal datagSum(DataGridView dgv, string colName) { int i = dgv
RowsAdded
上使用它,但我得到以下错误:
System.NullReferenceException was unhandled
Message=Object reference not set to an instance of an object.
这是我的密码,请告诉我哪里错了
public static decimal datagSum(DataGridView dgv, string colName)
{
int i = dgv.RowCount - 1, j = 0;
decimal dgvSum = 0;
decimal k = 0;
while (j < i)
{
if (dgv.Rows[(i - 1)].Cells.Count > 3)
{
if (decimal.TryParse(dgv.Rows[(i - 1)].Cells[colName].Value.ToString(), out k))
{
dgvSum += k;
}
j++;
}
}
return dgvSum;
}
publicstaticdecimaldatagsum(DataGridView-dgv,stringcolname)
{
inti=dgv.RowCount-1,j=0;
十进制dgvSum=0;
十进制k=0;
而(j3)
{
if(decimal.TryParse(dgv.Rows[(i-1)].Cells[colName].Value.ToString(),out k))
{
dgvSum+=k;
}
j++;
}
}
返回dgvSum;
}
代码片段
if (dataGridView1.Columns[e.ColumnIndex].Name == "CompanyName")
{
if (String.IsNullOrEmpty(e.FormattedValue.ToString()))
{
dataGridView1.Rows[e.RowIndex].ErrorText =
"Company Name must not be empty";
e.Cancel = true;
}
}
如果您在开始时只输入一个断点,并将鼠标悬停在每个变量上,您就可以检查出现此异常时哪个部分为空,它没有给您行号吗?@GovindaRajbhar:您尝试改进其他人的帖子很好,但是在编辑帖子时,花点时间来确保你已经解决了所有的格式问题,以及确保明显的拼写/语法/标点错误(例如“i”而不是“i”)得到了纠正,这将有助于确保其他人不必在第一时间就修改文章。谢谢谢谢你的建议。