日期:2014-05-18  浏览次数:20582 次

新手求助:未将对象引用设置到对象的实例!
为什么总是报这个错误,我是个新手,希望各位高手多多帮助,谢谢!


          错误代码:

                         
行   67:   b.Num=1;
行   68:   b.Price=Convert.ToDecimal(((Label)e.Item.FindControl( "Label1 ")).Text.Substring(1));
行   69:   b.Title=((Label)e.Item.FindControl( "Lable3 ")).Text;
行   70:   bs.Add(b);
行   71:   Session[ "mycart "]=bs;
 
        我这是在网上看的购物车教程,想自己学着做,可太笨,呵呵!

------解决方案--------------------
单这几行代码看不出吧
------解决方案--------------------
(((Label)e.Item.FindControl( "Label1 ")).Text.Substring(1);

出现这种错误一般是说:在使用某变量时..还没有实例化..
如:
ArrayList ss;
ss.add( " ");
这就会出现这种错误。。

你用个监视。。
仔细看看e.Item.FindControl( "Label1 ")是不空。。
如果是空的话。。那么再强制转换成Label当然就会出现这种错误了。。。
------解决方案--------------------
应该要判断一下所点的是那一行吧
------解决方案--------------------
是空的,谢谢你,可是用 e.Item.FindControl( "Label1 ")为什么取不到值呢?


=======

确定模板列的具有ID 为 Label1 的 Label?

放在 itemtemplate 还是 edittemplate 中?