您的位置:程序门 -> .net技术 -> c#



提示“未将对象引用设置到对象的实例”(c#),请教原因,谢谢!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


提示“未将对象引用设置到对象的实例”(c#),请教原因,谢谢![已结贴,结贴人:xmpilot]
发表于:2007-02-15 10:31:13 楼主
在   datagrid1_updatecommand   中:
    if(e.item.itemtype==listitemtype.edititem)
    {
        datarowview   r=(datarowview)e.item.dataitem;
        string   id=r[0].tostring();
 
    ....


调试时提示:“未将对象引用设置到对象的实例”错误;

而如果在   datagrid1_itemdatabound   中却不会错误,请教原因!   谢谢了!
发表于:2007-02-15 10:47:571楼 得分:7
在执行datagrid1_updatecommand   时,是不能这样访问的,除非你又从新绑定了一次
itemdatabound事件的执行是在   执行   databind()方法时,这时又datasource
而在执行updatecommand等类似的事件处理时,这时的datasource已经没有了,只能通过datagrid的viewstate来访问已经展示在页面中的数据。
发表于:2007-02-15 10:55:462楼 得分:12
e.item.dataitem已经不存在了,当然会提示错误,
datasource在itemdatabound是是存在的,但updatecommand是通过postback的,这个时候datasource已经不存在,如果你要使用id之类的数据,应该先保存下来,例如datakeyfield跟datakeys配合使用就可以保存id字段。
发表于:2007-02-15 12:15:293楼 得分:1


快速检索

最新资讯
热门点击