未将对象引用设置到对象的实例

ltxyxj 2008-04-22 11:30:49
for (int i = 0; i < GridView1.Rows.Count; i++)
{
TextBox tj1 = (TextBox)GridView1.Rows[i].FindControl("TextBox20");
Label tj = (Label)GridView1.Rows[i].FindControl("Label20");
if (tj.Text == "已提交" || tj1.Text== "已提交")
如果if的条件满足了,就不报错;如果不满足,就报“未将对象引用设置到对象的实例”的错误。
哪位高人能帮帮我啊????
...全文
117 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿非 2008-04-22
  • 打赏
  • 举报
回复

TextBox txt = GridView1.Rows[i].FindControl("TextBox20") as TextBox;
Label lbl = GridView1.Rows[i].FindControl("Label20") as Label;
if(txt!=null&&lbl!=null)
{
if (txt.Text == "已提交" ¦ ¦ lbl.Text== "已提交")
...
}

7仔 2008-04-22
  • 打赏
  • 举报
回复
for (int i = 0; i < GridView1.Rows.Count; i++)
{
TextBox tj1 = (TextBox)GridView1.Rows[i].FindControl("TextBox20");
Label tj = (Label)GridView1.Rows[i].FindControl("Label20");
if (tj.Text == "已提交" ¦ ¦ tj1.Text== "已提交")
你这么写造成的结果是 当RowType为 Header时,tj1和tj都为null所以 才会出现为将对象引用到对象的实例

你可以使用3楼的方法先判断是否为空,然后再执行text判断;
也可以增加 下面这个方法 先判断rowType然后在执行 findcontrol
Row.RowType == DataControlRowType.DataRow)
阿非 2008-04-22
  • 打赏
  • 举报
回复

TextBox txt = GridView1.Rows[i].FindControl("TextBox20") as TextBox;
Label lbl = GridView1.Rows[i].FindControl("Label20") as Label;
if(txt!=null&&lbl!=null)
{
if (tj.Text == "已提交" ¦ ¦ tj1.Text== "已提交")
...
}
wh110 2008-04-22
  • 打赏
  • 举报
回复
把TJ在FOR外面声明,然后再在里面使用.
竹林听雨2005 2008-04-22
  • 打赏
  • 举报
回复
那应该是与判断,而不是或啊。
是不是逻辑性的问题?

if (tj.Text == "已提交" && tj1.Text== "已提交")

建议在那上面加上Trim()或SubString()最好,
zpcoder 2008-04-22
  • 打赏
  • 举报
回复
代码帖得太少了,只是一行出的错。?

3楼的方法你也可以试试,
zhf2007fhz 2008-04-22
  • 打赏
  • 举报
回复
先给变量赋个值,然后试试这种方法:
if ((tj != null && tj.Text == "已提交") ¦ ¦ (tj1 != null && tj1.Text== "已提交"))
ltxyxj 2008-04-22
  • 打赏
  • 举报
回复
我就是想判断tj和tj1的值啊。
如果先给他们赋值,就没法判断了啊
rangeon 2008-04-22
  • 打赏
  • 举报
回复
if ((tj != null && tj.Text == "已提交") ¦ ¦ (tj1 != null && tj1.Text== "已提交"))
sunrain_yingxi 2008-04-22
  • 打赏
  • 举报
回复
if(tj!=null)
{
if (tj.Text == "已提交" ¦ ¦ tj1.Text== "已提交")
}
sun_Ke 2008-04-22
  • 打赏
  • 举报
回复
你的else是什么?
lihongdian 2008-04-22
  • 打赏
  • 举报
回复
在前面定义一下变量的值.不管if不if都给变量设定一个初始值就可以解决了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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