GridView分页与详细使用方法

gridview分页与详细使用方法

1.       把gridview控件拖放到界面上

2.       用代码设置数据源绑定gridview控件

oledbcommand command = new oledbcommand(); 

        string sql = "select * from admin";    //绑定到数据表admin

        command.commandtext = sql;

        command.connection = shyconnection.conn;

        shyconnection.conn.open();    //打开数据连接

        oledbdataadapter adapter = new oledbdataadapter(command);

        dataset ds = new dataset();

        adapter.fill(ds);

        gridviewx.datasource = ds;

        gridviewx.datakeynames = new string[] { "id" };  控件的主键数组

        gridviewx.databind();

   shyconnection.conn.close();   //关闭数据连接

3.   在源界面gridview控件内加入如下代码:

     <columns>

               <asp教程:boundfield headertext="学号" datafield="xuehao" />      //绑定数据源的xuehao列

               <asp:boundfield headertext="姓名" datafield="name" />        //绑定数据源的name列

               <asp:boundfield headertext="密码" datafield="pasword" />     //绑定数据源的pasword列

               <asp:templatefield headertext="删除">

                   <itemtemplate>

                       <asp:checkbox id="checkbox1" runat="server" />

                   </itemtemplate>

               </asp:templatefield>

               <asp:templatefield headertext="编辑">

                   <itemtemplate>

                       <asp:linkbutton id="linkbutton1" runat="server" causesvalidation="false" commandname="zuoza"  commandargument="<%# gridviewx.rows.count %>" text="编辑"></asp:linkbutton>

                   </itemtemplate>

               </asp:templatefield>

      </columns>

4.判断gridview控件里面每列的checkbox控件是否被中

    protected void button1_click(object sender, eventargs e)

    {

        for (int i = 0; i <= gridviewx.rows.count - 1; i++)

        {

            checkbox cbox = (checkbox)gridviewx.rows[i].findcontrol("checkbox1");   //在每列中查找名称是checkbox1的checkbox控件,然后强制实例转换为checkbox的对象

            if (cbox.checked == true)

            {

                response.write((int)gridviewx.datakeys[i].value + "<br>");  //输出当前列的主键值

            }

            else

            {

                response.write("shy" + "</br>");

            }

        }

}

5.如何点击编辑的时候触发函数gridviewx_rowcommand:   

protected  void gridviewx_rowcommand(object sender, gridviewcommandeventargs e)

    {

        if (e.commandname == "edit")

        {

            string id = "";

            int index = convert.toint32((string)e.commandargument);

            id = convert.tostring(gridviewx.datakeys[index].value.tostring()); 

//现在获取了所选记录的主键id

        }

}

6.当控件加载的时候触发这个事件函数:gridviewx_rowdatabound

    protected void gridviewx_rowdatabound(object sender, gridviewroweventargs e)

    {

        this.lblcurrentpage.text = string.format("当前第{0}页/总共{1}页", this.gridviewx.pageindex + 1, this.gridviewx.pagecount);

        //遍历所有行设置边框样式

        foreach (tablecell tc in e.row.cells)

        {

            tc.attributes["style"] = "border-color:black";

        }

        //用索引来取得编号

        if (e.row.rowindex != -1)

        {

            int id = gridviewx.pageindex * gridviewx.pagesize + e.row.rowindex + 1;

            //e.row.cells[0].text = id.tostring();

        }

    }

分页代码

grdview分页的功能。
操作如下:
1、更改grdview控件的allowpaging属性为true。
2、更改grdview控件的pagesize属性为 任意数值(默认为10)
3、更改grdview控件的pagesetting->mode为numeric等(默认为numeric)该属性为分页样式。
gridview属性设置好了,从页面上也能看到分页样式。

现在开始实现分页的功能:
1、在<<asp:gridview id=......>后添加,onpageindexchanging="gridview1_pageindexchanging"
2、在对应的aspx.cs中添加:
    protected void gridview1_pageindexchanging(object sender, gridviewpageeventargs e)
    {
        gridview1.pageindex = e.newpageindex;
        initpage(); //重新绑定gridview数据的函数
    }
3、
gridview1.pageindex = e.newpageindex;

 

页制作:

1.       先把gridview(gridviewx)控件拖放到界面上,绑定数据(bind());同时对dropdownlist做如下操作:this.ddlcurrentpage.items.clear();

        for (int i = 1; i <= this.gridviewx.pagecount; i++)

        {

            this.ddlcurrentpage.items.add(i.tostring());

        }

1.           this.ddlcurrentpage.selectedindex = this.gridviewx.pageindex;

2.       设置gridview的属性allowpaging="true" pagesize="n"

3.       拖放几个linkbutton按钮,分别设置如下:

    <asp:linkbutton id="lnkbtnfrist" runat="server" onclick="lnkbtnfrist_click">首页</asp:linkbutton>

    <asp:linkbutton id="lnkbtnpre" runat="server" onclick="lnkbtnpre_click">上一页</asp:linkbutton>

<asp:linkbutton id="lnkbtnnext" runat="server" onclick="lnkbtnnext_click">下一页</asp:linkbutton>

<asp:linkbutton id="lnkbtnlast" runat="server" onclick="lnkbtnlast_click">尾页</asp:linkbutton>

4.        设置几个文本按钮的事件处理函数:

    protected void lnkbtnpre_click(object sender, eventargs e)

    {

        if (this.gridviewx.pageindex > 0)

        {

            this.gridviewx.pageindex = this.gridviewx.pageindex - 1;

            bind();

        }

    }

    protected void lnkbtnnext_click(object sender, eventargs e)

    {

        if (this.gridviewx.pageindex < this.gridviewx.pagecount)

        {

            this.gridviewx.pageindex = this.gridviewx.pageindex + 1;

            bind();

        }

    }

    protected void lnkbtnlast_click(object sender, eventargs e)

    {

        this.gridviewx.pageindex = this.gridviewx.pagecount;

        bind();

 }

5.dropdownlist的事件处理函数:

    protected void dropdownlist1_selectedindexchanged(object sender, eventargs e)

    {

        this.gridviewx.pageindex = this.ddlcurrentpage.selectedindex;

        bind();

}

时间: 2024-10-27 01:30:30

GridView分页与详细使用方法的相关文章

GridView分页的实现以及自定义分页样式功能实例

本文为大家详细介绍下GridView实现分页并自定义的分页样式,具体示例代码如下,有想学习的朋友可以参考下哈,希望对大家有所帮助   GridView分页的实现 复制代码 代码如下: 要在GridView中加入 //实现分页 AllowPaging="true" //一页数据10行 PageSize="10" // 分页时触发的事件 OnPageIndexChanging="gvwDesignationName_PageIndexChanging"

移动控件介绍及详细使用方法

移动控件介绍及详细使用方法(看了这些你就基本会wap开发了) 在以前学习的有关ASP.NET 和 Web 窗体的知识可以帮助您快速地使用移动控件来构建移动 Web 应用程序.现在我们就开始ASP.NET 移动控件的学习之旅吧. AdRotator控件 AdRotator 移动控件和传统的ASP.NET程序中的AdRotator控件是非常类似的.该控件的主要功能是用来随机并循环显示一组广告横幅.AdRotator控件会自动进行循环处理,每刷新一次页面就随机地改变显示内容.我们还可以对广告进行优先级

Aspnetpager对GridView分页并顺利导出Excel_实用技巧

一.前言       谈到分页,在网页上简直到处都是.网络的资源越来越多,如果不用分页技术来显示,就会拖拉很长很长.下面给大家分享分页技术. 二.基本要点       当要显示数据量足够大的时候,我们往往采用分页显示的处理办法.分页有真分页和假分页. 假分页:从数据库中取出所有的数据,然后分页在界面上显示.访问一次数据库,但由于选择的数据量比较大,所以第一次花费时间比较长,但之后每一页的显示都是直接.快速的,避免对数据库的多次访问. 真分页:确定要显示的数量和内容,然后每次都去数据库取出该少量数

gridview分页代码(可提高分页速度)

gridview分页代码(可提高分页速度) internal static datatable datareadertodatatable(string squery, int istart, int iend)         { datatable schematable = null;             datatable dt = null;             sqlcommand cmdsql;             sqldatareader dr = null;   

asp.net 拖控件实现GridView分页删除编辑功能,如果出现了异常,我怎么捕获异常.!!!!!

问题描述 asp.net拖控件实现GridView分页删除编辑功能,如果出现了异常,我怎么捕获异常.!!!!!就比如说我这个异常~无法将NULL值插入列'moeny',表'yuguomin.dbo.info':该列不允许空值.UPDATE失败.语句已终止.说明:执行当前Web请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.Data.SqlClient.SqlException:无法将NULL值插入列'moeny',表

C#.net 求 用存储过程 实现 GRIDVIEW 分页 全过程(存储过程,前台,后台)

问题描述 请帮帮小弟 解决方案 解决方案二:可以下载ASP.NET2.0WebsiteProgramming:Problem-Design-Solution电子版的书看看里面有详细的使用gridview分页的过程解决方案三:谢谢

asp.net中GridView实现查看详细信息,修改,删除数据

信息管理实验7-使用GridView实现查看详细信息,修改,删除数据 首先创建好一个数据库&表  代码如下 复制代码 CREATE DATABASE MedicineDB; USE MedicineDB; CREATE TABLE Medicine( [ID] bigint, [Name] varchar(50), [Price] bigint, [Type] varchar(50), [Intro] text, primary key(ID) ) 首先创建好一个数据库&表  代码如下 复

复杂检索数据并分页显示的处理方法

系统标题:复杂检索数据并分页显示的处理方法 系统功能:利用临时表检索数据库数据,然后分页显示的方法: 处理方法:采用临时表存放数据中间结果,根据中间结果显示数据           数据的显示采用隔行的方式处理 处理优点:对于复杂的查询,特别是涉及到多表的数据查询,如果直接使用查询条件,系统的           开销将很大,利用临时表把数据先保存,然后处理.这样对数据库的查询只要开销一次. 使用方法:只要把连接数据库的用户信息和数据表改变即可使用         <?   //连接数据库   

PHP复杂检索数据并分页显示的处理方法

  系统标题:复杂检索数据并分页显示的处理方法 系统功能:利用临时表检索数据库数据,然后分页显示的方法: 处理方法:采用临时表存放数据中间结果,根据中间结果显示数据 数据的显示采用隔行的方式处理 处理优点:对于复杂的查询,特别是涉及到多表的数据查询,如果直接使用查询条件,系统的 开销将很大,利用临时表把数据先保存,然后处理.这样对数据库的查询只要开销一次. 使用方法:只要把连接数据库的用户信息和数据表改变即可使用 <? //连接数据库 $dbh = mysql_connect('localhos