我有一个Asp.Net webform,其中包含gridview控件和pagenavigation usercontrol。用户控件公开了属性,用于设置gridview控件的实例。第一次加载页面时,实例将从webform传递。当我单击pagenavigation用户控件的下一个按钮以遍历到下一页时,usercontrol中的gridview控件对象为null。
你能告诉我为什么会这样吗? gridview控件第一次正确设置了吗?为什么在遍历时给定对象实例没有设置错误?如何解决这个问题?
答案 0 :(得分:0)
要么。当你说实例时,我真正试图确定它是动态创建并添加到页面的控件集合中,还是通过设计器和元素。
如果它在代码隐藏中完成,如:
GridView v = new GridView();
this.Controls.Add(v);
然后你必须每次在Page的OnLoad事件中重新创建它(或控制它的创建)以便可用。更重要的是,它每次都必须具有完全相同的名称。否则,它将无法匹配上一次的视图状态信息。