0
   for (int i = 0; i < parts.Count; i++)
        {
            if (!((part)parts[i]).deleteUsed)
                ((part)parts[i]).hints = ((TextBox)partsView.Rows[i].Cells[4].FindControl("textBox")).Text;
            ((part)parts[i]).PartsWaiting = ((TextBox)partsView.Rows[i].Cells[5].FindControl("textBox1")).Text;
        }

System.NullReferenceException:对象引用未设置为对象的实例

由于某种原因,我收到此错误,似乎不知道我哪里出错了。

4

2 回答 2

1

您的问题部分是由于多个链接的尊重,例如

a.getB().getC().getD()

如果其中一种方法返回 null,您将无法轻松识别发生了什么。

除非您非常确定自己在做什么,否则我会将上述内容分为以下两种:

  1. 单独的行并分配中间变量。然后空值将变得明显。它所在的行
  2. NullPtrException一组在解析 null 时取消引用并抛出 a 的函数。同样,您的违规路线将立即变得明显。

您会注意到,上述内容并非针对您当前的问题。相反,当您无法确定链接方法在某个阶段不会返回 null 时,这是一种有用的做法。

于 2012-08-15T08:33:24.570 回答
0

FindControl 可能没有获取文本框。设置断点并观察FindControl(). 还要确保您在 FindControl 中使用的 ID 是正确的。

于 2012-08-15T08:31:43.393 回答