【问题标题】:how to reload repeater on button click in asp.net如何在asp.net中单击按钮重新加载中继器
【发布时间】:2012-05-23 02:54:33
【问题描述】:

我的页面上有一个中继器在页面加载时填充

        con.Open();
        SqlDataReader postView = cmd.ExecuteReader();
        topicView.DataSource = postView;
        topicView.DataBind();

然后我有一个部分可以添加帖子。我想要它做的是当用户按下添加时,它会重新加载页面并显示更新的转发器。但是它没有这样做

每个人都说只是重新加载数据绑定,除了由于原始数据绑定在页面加载中而不起作用,并且新的数据绑定在受保护的无效按钮单击中。

谁能告诉我该怎么做,还是我只需要将所有连接、数据源和数据绑定信息放在按钮点击代码中?

【问题讨论】:

    标签: asp.net data-binding repeater


    【解决方案1】:

    您可以创建一个可以在每次按钮单击事件触发时调用的函数

     Private void BindRepeater()
     {
         con.Open();
        SqlDataReader postView = cmd.ExecuteReader();
        topicView.DataSource = postView;
        topicView.DataBind();
      }
    
      Protected Button_Click(object as sender , EventArgs e)
     {
       //call the function to populate the repeater with the updated records
       this.BindRepeater();
    
      }
    

    【讨论】:

      【解决方案2】:

      你可以这样解决。创建一个方法

      private void Bind()
      {
              con.Open();
              SqlDataReader postView = cmd.ExecuteReader();
              topicView.DataSource = postView;
              topicView.DataBind();
      }
      

      现在您可以在页面上任何需要重新加载中继器的地方使用它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-02-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-15
        • 2017-04-30
        相关资源
        最近更新 更多