zoukankan      html  css  js  c++  java
  • GridView激发了未处理的事件“PageIndexChanging”的分析

    这个问题网上有许多解决方法,主要是因为没有为GridView指定PageIndexChanging事件:

    解决方法:

    首先在aspx中指定:

            <asp:GridView ID="GridView2" runat="server" OnPageIndexChanging="GridView1_PageIndexChanging"
                AllowPaging="True" PageSize="10">
            </asp:GridView>
    然后后台代码:
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView1.PageIndex = e.NewPageIndex;
            GridView1.DataSource = getData();//调用绑定的具体方法
             GridView1.DataBind();
        }

    通过这个设置,是可以解决标题所示报错的。

    之所以把这个问题拿出来说一下,主要是我之前也用过GridView,记得那时候也是可以分页的,但是并没有使用PageIndexChanging事件来处理也没问题啊。经过网上文章总结,发现是GridView数据源绑定方式的问题:

    如果对GridView使用了DataSource来手动绑定,就必须来手动处理翻页。手动绑定就是设置GridView的DataSource(比如一个DataTable 等)并调用它的DataBind方法来实现绑定。(就是上面的方法)

    而我之前之所以没有遇到过这个错误,是因为使用了自动绑定,也就是通过设置GridView的DataSourceID,将其指定给某一个数据源控件(比如ObjectDataSource,SqlDataSource等),因为这些控件具有一些自动处理表格的功能,因此就无省去了许多手工编码工作。

     <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False"
                DataSourceID="SqlDataSource1" PageSize="10">
                <Columns>
                    <asp:BoundField DataField="ID" HeaderText="ID" />
                    <asp:BoundField DataField="Name" HeaderText="Name" />
                </Columns>
            </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyConnectionString %>"
                SelectCommand="SELECT * FROM [table1]"></asp:SqlDataSource>

    现在很少用控件了,不是因为不好用,而是工作中一直搞前端开发,所以忘得差不多了。

  • 相关阅读:
    [ERR] Node 10.211.55.8:7001 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.
    PAT A1137 Final Grading (25 分)——排序
    PAT A1136 A Delayed Palindrome (20 分)——回文,大整数
    PAT A1134 Vertex Cover (25 分)——图遍历
    PAT A1133 Splitting A Linked List (25 分)——链表
    PAT A1132 Cut Integer (20 分)——数学题
    PAT A1130 Infix Expression (25 分)——中序遍历
    PAT A1142 Maximal Clique (25 分)——图
    PAT A1141 PAT Ranking of Institutions (25 分)——排序,结构体初始化
    PAT A1140 Look-and-say Sequence (20 分)——数学题
  • 原文地址:https://www.cnblogs.com/lerit/p/2144787.html
Copyright © 2011-2022 走看看