首页 新闻 搜索 专区 学院

mvp高手请看。。有关Repeater。。和Repeater1_ItemCreated事件。的问题。

0
悬赏园豆:20 [已关闭问题]

如果页面上不加button..和button_click()事件。。这个repeater绑定数据都很正常  
  F5刷新也好使。。可是我加上button.和button_click事件。。只要点击按钮  
  就提示:string   cate_id=   row["category_id"].ToString();。。异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。  
  明显是绑定数据的那个方法没榜上数据。。怎么解决呢。。???  
   
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
  if(!IsPostBack)  
  {  
  Bind_Data_List();  
  }  
  }  
   
  private   void   Repeater1_ItemCreated(object   sender,   System.Web.UI.WebControls.RepeaterItemEventArgs   e)  
  {  
   
  DataRowView   row   =   (DataRowView)e.Item.DataItem;  
  string   cate_id=   row["category_id"].ToString();  
  string   txt=   row["category_name"].ToString();  
  HyperLink   hlink   =   new   HyperLink();  
  hlink.Text   =   txt   ;  
  hlink.NavigateUrl   =   "../Product/Child_Category_Display.aspx?Category_id="+cate_id;  
  e.Item.Controls.Add(   new   System.Web.UI.LiteralControl(">>>"));  
  e.Item.Controls.Add(   hlink   );  
   
  }  
  public   void   Bind_Data_List()  
  {  
  (code   。略)  
  this.Repeater1.DataSource   =   DT.DefaultView;  
  this.Repeater1.DataBind();  
  }

声明:Bind_Data_List()---肯定是没有错误的。。  
   
  private   void   Button1_Click(object   sender,   System.EventArgs   e)  
  {  
   
  }  
  我的按钮事件里什么都没有。。点击后就提示错误信息。。  
  我感觉按钮事件的执行影响了   Bind_Data_List()的数据绑定。。  
  要不然怎么回提示异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。  
  。表明。。string   cate_id=   row["category_id"].ToString();。。没有数据可以引用

问题补充: Repeater1_ItemCreated的事件先于Page_load 和 Button1_Click 事件执行了
peida的主页 peida | 初学一级 | 园豆:130
提问于:2009-01-06 11:37
< >
分享
其他回答(2)
0

xuexi

Jared.Nie | 园豆:1940 (小虾三级) | 2009-01-06 14:24
0

点击按钮postback后repeater并没有绑定数据,却依然调用了Repeater1_ItemCreated事件。建议去掉if(!IsPostBack)

风海迷沙 | 园豆:4453 (老鸟四级) | 2009-01-06 15:29
0
Code

Repeater 中使用ItemCommand事件,而非Command/Button调用Click

 

 

 

重典 | 园豆:2442 (老鸟四级) | 2009-01-07 09:18
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册