asp.net 分页显示数据表的数据的代码

实现代码如下:


代码如下:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Drawing;
namespace ShowData4
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
GridView1.PageSize = 5; /*GridView控件在每页上显示的记录数目*/
if (GridView1.Rows.Count != 0) /*当记录数只显示一页时加载分页标签*/
{
Control table = GridView1.Controls[0];
int count = table.Controls.Count;
table.Controls[count - 1].Visible = true;
}
}
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.Pager) /*显示页导航控件的行*/
{
/*创建在网页上显示超链接的按钮*/
LinkButton Button_IndexFirst = new LinkButton();
LinkButton Button_IndexLast = new LinkButton();
LinkButton Button_IndexNext = new LinkButton();
LinkButton Button_IndexPrevious = new LinkButton();
/*添加超链接按钮到页导航行*/
e.Row.Controls[0].Controls.Add(Button_IndexFirst);
e.Row.Controls[0].Controls.Add(new LiteralControl(("  "))); /*分页按钮之间用2个空格隔开*/
e.Row.Controls[0].Controls.Add(Button_IndexPrevious);
e.Row.Controls[0].Controls.Add(new LiteralControl(("  ")));
e.Row.Controls[0].Controls.Add(Button_IndexNext);
e.Row.Controls[0].Controls.Add(new LiteralControl(("  ")));
e.Row.Controls[0].Controls.Add(Button_IndexLast);
Button_IndexFirst.Text = "第一页";
Button_IndexFirst.CommandName = "first";
Button_IndexFirst.Click += new EventHandler(PageButtonClick);
Button_IndexPrevious.Text = "上一页";
Button_IndexPrevious.CommandName = "previous";
Button_IndexPrevious.Click += new EventHandler(PageButtonClick);
Button_IndexNext.Text = "下一页";
Button_IndexNext.CommandName = "next";
Button_IndexNext.Click += new EventHandler(PageButtonClick);
Button_IndexLast.Text = "最后一页";
Button_IndexLast.CommandName = "last";
Button_IndexLast.Click += new EventHandler(PageButtonClick);
if (GridView1.PageIndex == 0)
{
if (GridView1.PageCount > 1) /*记录数所需页数大于一页*/
{
Button_IndexFirst.Enabled = false;
Button_IndexPrevious.Enabled = false;
}
else /*记录数只需一页*/
{
Button_IndexFirst.Enabled = false;
Button_IndexPrevious.Enabled = false;
Button_IndexNext.Enabled = false;
Button_IndexLast.Enabled = false;
}
}
else if (GridView1.PageIndex == GridView1.PageCount - 1)
{
Button_IndexNext.Enabled = false;
Button_IndexLast.Enabled = false;
}
else if (GridView1.PageCount <= 0)
{
Response.Write("数据表中没有数据!");
Button_IndexFirst.Enabled = false;
Button_IndexPrevious.Enabled = false;
Button_IndexNext.Enabled = false;
Button_IndexLast.Enabled = false;
}
}
}
protected void PageButtonClick(object sender, EventArgs e)
{
LinkButton clickedButton = ((LinkButton)sender);
if (clickedButton.CommandName == "first") /*点击的是“第一页”按钮,页索引为0*/
{
GridView1.PageIndex = 0;
}
else if (clickedButton.CommandName == "next") /*点击的是“下一页”按钮,页索引加1*/
{
if (GridView1.PageIndex < GridView1.PageCount - 1)
{
GridView1.PageIndex += 1;
}
}
else if (clickedButton.CommandName == "previous") /*点击的是“上一页”按钮,页索引如果大于等于1则减1*/
{
if (GridView1.PageIndex >= 1)
{
GridView1.PageIndex -= 1;
}
}
else if (clickedButton.CommandName == "last") /*点击的是“最后一页”按钮*/
{
GridView1.PageIndex = GridView1.PageCount - 1;
}
}
}
}

(0)

相关推荐

  • 用vbs模拟的一个asp的分页显示功能

    刚做完1个项目,闲的无聊,想改改自己HomePage,但没有Asp权限,所以突发奇想,用vbs模拟了一个图片分页显示功能!由于写的是适合自己使用的功能,难免很多地方不是很完善!也请各位路过的提些意见,若有朋友正好想找类似的功能,或许可以帮助一下,另外,祝论坛的每一位朋友元旦快乐! 复制代码 代码如下: <script language=VBS> Function showINDEXPAGE()          JS=1          webPath=window.location    

  • asp.net 文章分页显示实现代码

    复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { string str = "事情发生在5月14日晚上23:30分,廊坊师范学院1号楼宿舍发生了恶性打架杀人事件,因1号楼较为复杂,有体育生.英语学院.教育学院等学生住宿,当时情况较为混乱.被害者是一名10级接本的体育生(马上面临毕业)和一名11级教育学院的新生,双方产生 矛盾原因目前不明,当场造成2死1重伤,伤口刀刀致命.其中一人被凶手割断喉部大动脉,未经抢救,当场

  • asp.net 通用分页显示辅助类(改进版)

    闲暇时重新再看之前很多项目代码的时候,发现很多总是有那么点缺陷的代码,如芒刺入骨,令人心烦.挣扎良久,苦口婆心劝荐自己今后要争取把某些代码写的更易用更灵活更完善一些.比如在这篇已经提及到的通用客户端分页显示辅助类(AspNetPager),在大大小小项目中出现频率非常高,但是显然对分页形式的选择和样式的控制弱了点.虽然之前这个功能的实现都是按照实际项目的需求来实现的,对旧项目没有影响,但是这也不能成为该功能没有充分实现扩展性和通用性的理由,这点向来自傲的楼猪也不得不承认. 1.分页模式和样式扩展

  • Asp 解析 XML并分页显示源码

    Asp 解析 XML并分页显示,示例源码如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>

  • ASP Recordset 分页显示数据的方法(修正版)

    1.建立Recordset对象 复制代码 代码如下: Dim objMyRst Set objMyRst=Server.CreateObject("ADODB.Recordset") objMyRst.CursorLocation=adUseClientBatch '客户端可批量处理 objMyRst.CursorType=adOpenStatic'光标类型为静态类型 注意:Recordset对象不能用Set objMyRst=Connection.Excute strSQL的语句建立

  • asp长文章用分页符来分页显示

    需要注意的是 [ page ]需要删除中间的空格,因为与我们的后台分页重复,所以加了空格处理. 只是在文章添加时,在你想让它分页的地方加上分页符:"[ page ]"(当然这个符号你可以随便用,比如:[ page ].&&&.###.@@@--,只要它不会在文章要正常显示的地方出现就行了.) 我用了四个页面,输入页(index.asp).输入完成页(add.asp).文章列表页(view.asp).文章内容页(text.asp),前三个都是不用处理的页面,看下面

  • asp.net 文章内容分页显示的代码

    aspx: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ArticlePage.aspx.cs" Inherits="ArticlePage" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/

  • ASP中实现分页显示的七种方法

    在微软的ASP编程体系中,ADO对象的建立,使得从网页访问数据库成为一件易事,特别是ADO的Recordset对象使得控制数据的输出显示更为方便.自由.而在Visual InterDev6.0(以下简称VI6.0)中,由于Script Object Model(以下简称SOM).Design-Time Control(以下简称DTC)以及Data Environment Object Model(以下简称DEOM)等对象模型的引入,使网页对数据库的访问设计显得更为方便. 因为主题方面的原因,关于

  • MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作

    MySQL有很多的可视化管理工具,比如"mysql-workbench"和"sequel-pro-". 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的理解透彻,因为我本来就比较喜欢写代码.同时写出来这些文章,是想要给大家当个参考,希望也能对大家有所帮助,有所提升,这就是我为什么要写终端操作MySQL的文章了. 注意:MySQL数据库命令不区分大小写.但在MAC的终端,如果你想使用tab自动补全命令,那么你就必须使用大

  • python导出hive数据表的schema实例代码

    本文研究的主要问题是python语言导出hive数据表的schema,分享了实现代码,具体如下. 为了避免运营提出无穷无尽的查询需求,我们决定将有查询价值的数据从mysql导入hive中,让他们使用HUE这个开源工具进行查询.想必他们对表结构不甚了解,还需要为之提供一个表结构说明,于是编写了一个脚本,从hive数据库中将每张表的字段即类型查询出来,代码如下: #coding=utf-8 import pyhs2 from xlwt import * hiveconn = pyhs2.connec

  • Laravel 将数据表的数据导出,并生成seeds种子文件的方法

    用过laravel的都知道,我们表里面的数据通常是保存到seeder文件中,但是有些时候需要将表里已有的数据导出到seed文件中,那么怎么导出呢,其实这里有个扩展包叫iseed,我们可以利用它来把数据表里的数据导出到seed中. 安装isseed 安装isseed,我这里是laravel 5.4,安装的iseed是2.1版本的,你们看情况,随意 composer require "orangehill/iseed": "2.1" 将iseed加入到composer.

  • django models里数据表插入数据id自增操作

    models 建表实现插入数据自增ID 之前使用 Id = models.IntegerField(primary_key=True,default = '1') 每次数据插入进去都会更新一次,并且Id都为1,就变成update,而不是insert 改成这样 id = models.AutoField(primary_key=True) django 在每一次save()操作后都可以正常的增加一条数据并且id顺序自增 id无需在save中创建,数据表自动添加 补充知识:Django查询 – id

  • asp.net 分页显示数据表的数据的代码

    实现代码如下: 复制代码 代码如下: using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebCo

  • mysql不同数据库不同数据表导入数据

    背景 现在我有这么一个需求: 数据库A的user表需要导入到数据库B的account表 user表字段:uid,username,email,password,regdate,salt account表字段:id,name,email,password,type,salt 导入的字段只有username,email,password,salt,并且regdate需要符合某个条件 下面分几种情况来写sql,主要区分insert into和replace into 情况 导入的数据在B库的表中完全不

  • MySQL入门(四) 数据表的数据插入、更新、删除

    序言 数据表的插入.更新.删除非常简单,但是简单的也要学习,细节决定成败. ---WH 一.插入数据 格式:INSERT INTO 表名(字段名...)VALUES(值...); 创建环境 使用person表 CREATE TABLE person ( id INT UNSIGNED NOT NULL AUTO_INCREMENT, name CHAR(40) NOT NULL DEFAULT '', age INT NOT NULL DEFAULT 0, info CHAR(50) NULL,

  • asp.net Repeater显示父子表数据,无闪烁

    效果图如下: 源代码如下: 复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebPart

  • asp.net动态获取Excel表名的函数代码

    复制代码 代码如下: public string GetExcelFirstTableName(string excelFileName) { string tableName = null; if (File.Exists(excelFileName)) { using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet." + "OLEDB.4.0;Extended Properties=

随机推荐