解析GridView自带分页及与DropDownList结合使用

 更新时间:2016年12月27日 09:51:30   作者:超超boy  
本文主要介绍了GridView自带的分页功能的实现方法。具有一定的参考价值,需要的朋友一起来看下吧

GridView自带的分页功能实现:

要实现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数据的函数
  }

参考代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="gridview_zidaifenye.aspx.cs" Inherits="gridview_zidaifenye" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title></title>
</head>
<body>
  <form id="form1" runat="server">
  <div>
   <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True"
      AutoGenerateColumns="False" DataKeyNames="ID" PagerSettings-Mode="Numeric"
      OnRowDataBound="GridView1_RowDataBound" PageSize="5" OnPageIndexChanging="GridView1_PageIndexChanging">
      <Columns>
        <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True"
          SortExpression="ID" />
        <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
        <asp:BoundField DataField="Stock" HeaderText="Stock" SortExpression="Stock" />
      </Columns>
    </asp:GridView>
    每页显示<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
      <asp:ListItem>5</asp:ListItem>
      <asp:ListItem>10</asp:ListItem>
      <asp:ListItem>15</asp:ListItem>
    </asp:DropDownList>
    条记录 &nbsp; &nbsp; 
    <asp:Label ID="lblMsg" runat="server"></asp:Label>
  </div>
  </form>
</body>
</html>

后台代码:

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class gridview_zidaifenye : System.Web.UI.Page
{
  DBAccess db = new DBAccess();
  protected void Page_Load(object sender, EventArgs e)
  {
    if (!IsPostBack)
    {
      // gvProduct.DataSource = getData();
      // gvProduct.DataBind();
      BindGrid();
    }
  }
  public void BindGrid()
  {
    SqlCommand comm = db.CreateCommand("select * from product p,Uuser u where p.userid=u.id");
    SqlDataAdapter sda = new SqlDataAdapter();
    sda.SelectCommand = comm;
    DataSet ds = new DataSet();
    sda.Fill(ds,"Datatable");
    DataView dv = ds.Tables[0].DefaultView;
    GridView1.DataSource = dv;
    GridView1.DataBind();
  }
  protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
  {
    GridView1.PageSize = int.Parse(DropDownList1.SelectedValue);
    GridView1.PageIndex = 0;
    BindGrid(); //GridView1.DataBind();
  }
  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
  {
    lblMsg.Text = "当前页为第" + (GridView1.PageIndex + 1).ToString() + "页,共" + (GridView1.PageCount).ToString() + "页";
  }
  protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
  {
    GridView1.PageIndex = ((GridViewPageEventArgs)e).NewPageIndex;
    BindGrid(); //重新绑定GridView数据的函数
  }
}

总结下,方便以后用到。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • 详解ASP.NET MVC的筛选器

    详解ASP.NET MVC的筛选器

    ASP.NET MVC提供了四种类型的筛选器(AuthorizationFilter、ActionFilter、ResultFilter和ExceptionFilter),本篇文章对其进行一一介绍,需要的朋友来看下吧
    2016-12-12
  • 基于MVC5中的Model层开发数据注解

    基于MVC5中的Model层开发数据注解

    下面小编就为大家分享一篇基于MVC5中的Model层开发数据注解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 详解ASP.NET MVC3:Razor的@:和语法

    详解ASP.NET MVC3:Razor的@:和语法

    这篇文章主要介绍了详解ASP.NET MVC3:Razor的@:和语法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • aspxgridview CustomButtonCallback 不支持弹出消息提示解决方法

    aspxgridview CustomButtonCallback 不支持弹出消息提示解决方法

    aspxgridveiw是devexpress的一个grid控件,使用起来还不错,不能再 CustomButtonCallback 事件中使用response.write,具体的解决方法如下,感兴趣的朋友可以参考下哈
    2013-06-06
  • asp.net安全、实用、简单的大容量存储过程分页

    asp.net安全、实用、简单的大容量存储过程分页

    昨晚研究到2点多,对网络上主流的分页存储过程大体看了一遍,但对安全以及如何使用很多文章都没有过多的提及,而我要在这些文章的基础上总结出一个比较实用的分页存储过程,方便大家在以后的项目中使用。
    2009-06-06
  • 如何给asp.net core写个中间件记录接口耗时

    如何给asp.net core写个中间件记录接口耗时

    这篇文章主要给大家介绍了关于如何给asp.net core写个中间件记录接口耗时的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用asp.net core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • ASP.NET Core环境设置教程(2)

    ASP.NET Core环境设置教程(2)

    这篇文章主要为大家详细介绍了Asp.net Core环境设置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 一步步教你在Asp.net Mvc中使用UEditor编辑器

    一步步教你在Asp.net Mvc中使用UEditor编辑器

    大家都知道ueditor是百度编辑器,目前使用也比较广泛,下面这篇文章主要是通过一步步的步骤教大家在Asp.net Mvc中使用UEditor编辑器,需要的朋友可以参考借鉴,下面来一起看看吧。
    2016-12-12
  • 查看Json输出的*最方便*的方法 (转)

    查看Json输出的*最方便*的方法 (转)

    项目的表现层使用MVC+Extjs。在开发过程中,一旦页面显示不正常,第一个需要排查的总是“Action是否输出了正确的Json?”。
    2009-11-11
  • asp.net DbProviderFactory的使用-示例

    asp.net DbProviderFactory的使用-示例

    NET 2.0有一个抽象工厂模式的典型应用:通过DBProviderFactory 可以对不同数据库进行操作。
    2009-11-11

最新评论