化拓教育网
您的当前位置:首页GridView中分页和导出数据

GridView中分页和导出数据

来源:化拓教育网
shiyusing 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.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.IO;

public partial class GridView : System.Web.UI.Page {

protected string connString = ConfigurationSettings.AppSettings[\"ConnectionString\"]; protected int rowCount = 0; protected int pageCount = 0; protected int pageSize = 0; protected int pageNow = 0;

protected void Page_Load(object sender, EventArgs e) {

if (!Page.IsPostBack) {

//connString = ConfigurationSettings.AppSettings[\"ConnectionString\"]; //获取记录的总条数

SqlConnection con = new SqlConnection(); con.ConnectionString = connString; con.Open();

SqlCommand cmd = new SqlCommand();

/********************************修改其中的数据表名称**************************/ cmd.CommandText = \"select count(*) from BMSK_GB\"; cmd.Connection = con;

rowCount = Convert.ToInt32(cmd.ExecuteScalar()); con.Close();

//设置和获取每页显示几条记录 DropDownList1.Items.Clear(); for (int i = 1; i <=rowCount; i++) {

DropDownList1.Items.Add(i.ToString()); }

if (rowCount < 5) {

DropDownList1.SelectedIndex = rowCount - 1; } else {

DropDownList1.SelectedIndex = 4; }

pageSize = Convert.ToInt32(DropDownList1.SelectedValue); if ((rowCount % pageSize) == 0) {

pageCount = Convert.ToInt32(rowCount / pageSize); } else {

pageCount = Convert.ToInt32(rowCount / pageSize) + 1; }

//获取跳转到哪一页的信息 DropDownList2.Items.Clear(); for (int j = 1; j <= pageCount; j++) {

DropDownList2.Items.Add(j.ToString()); }

Label1.Text = rowCount.ToString(); Label3.Text = pageCount.ToString(); //保存控件数据

ViewState[\"RowCount\"] = rowCount; ViewState[\"PageSize\"] = pageSize; ViewState[\"PageCount\"] = pageCount; //当前页 pageNow = 1;

ViewState[\"PageNow\"] = pageNow; }

rowCount = Convert.ToInt32(ViewState[\"RowCount\"]); pageCount = Convert.ToInt32(ViewState[\"PageCount\"]); pageSize = Convert.ToInt32(ViewState[\"PageSize\"]); pageNow = Convert.ToInt32(ViewState[\"PageNow\"]); if (pageCount < 0 || rowCount < 0) {

Response.Write(\"发生错误\"); Response.End(); }

if (pageNow <= 1) {

pageNow = 1;

btnFirst.Enabled = false;

btnPrevious.Enabled = false; }

Label2.Text = pageNow.ToString(); if (!Page.IsPostBack) {

BindData(); } }

//进行数据绑定 public void BindData() {

/********************************修改其中的数据表名称**************************/ String sql = \"select SKBM as 水库编码,SKMC as 水库名称,SZS as 所在市,SZX as 所在县,LX as 类型,SFWX as 是否危险 from BMSK_GB\"; SqlConnection con = new SqlConnection(); con.ConnectionString = connString; con.Open();

SqlDataAdapter da = new SqlDataAdapter(sql, con); DataSet ds = new DataSet();

/********************************修改其中的数据表名称**************************/ da.Fill(ds, (pageNow - 1) * pageSize, pageSize, \"BMSK_GB\"); GridView1.DataSource = ds; GridView1.DataBind(); ds.Clear(); con.Close();

Label2.Text = pageNow.ToString(); }

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) {

pageSize = Convert.ToInt32(DropDownList1.SelectedValue); if(Convert.ToInt32(rowCount%pageSize)==0) {

pageCount = Convert.ToInt32(rowCount/pageSize); } else {

pageCount = Convert.ToInt32(rowCount/pageSize); }

DropDownList2.Items.Clear(); for(int i=1;i<=pageCount;i++) {

DropDownList2.Items.Add(i.ToString());

}

Label3.Text = pageCount.ToString();

ViewState[\"PageSize\"] = pageSize; ViewState[\"PageCount\"] = pageCount; if (pageNow > pageCount) {

pageNow = 1;

ViewState[\"PageNow\"] = pageNow.ToString(); }

btnFirst.Enabled = true; btnPrevious.Enabled = true; btnNext.Enabled = true; btnLast.Enabled = true; if (pageNow == 1) {

btnFirst.Enabled = false; btnPrevious.Enabled = false; }

if (pageNow == pageCount) {

btnNext.Enabled = false; btnLast.Enabled = false; }

BindData(); }

protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e) {

pageNow = Convert.ToInt32(DropDownList2.SelectedValue); ViewState[\"PageNow\"] = pageNow.ToString(); BindData(); }

//显示第一页

private void moveFirst() {

pageNow = 1;

ViewState[\"PageNow\"] = pageNow.ToString(); BindData();

btnFirst.Enabled = false; btnPrevious.Enabled = false; btnNext.Enabled = true; btnLast.Enabled = true;

}

//显示上一页

private void movePrevious() {

pageNow = pageNow - 1;

ViewState[\"PageNow\"] = pageNow.ToString(); BindData(); if (pageNow==1) {

btnFirst.Enabled = false; btnPrevious.Enabled = false; }

btnNext.Enabled = true; btnLast.Enabled = true; }

//显示下一页

private void moveNext() {

pageNow = pageNow + 1;

ViewState[\"PageNow\"] = pageNow.ToString(); BindData();

btnFirst.Enabled = true; btnPrevious.Enabled = true; if (pageNow == pageCount) {

btnNext.Enabled = false; btnLast.Enabled = false; } }

//显示尾页

private void moveLast() {

pageNow = pageCount;

ViewState[\"PageNow\"] = pageNow.ToString(); BindData();

btnFirst.Enabled = true; btnPrevious.Enabled = true; btnNext.Enabled = false; btnLast.Enabled = false; }

protected void btnFirst_Click(object sender, EventArgs e)

{

moveFirst(); }

protected void btnPrevious_Click(object sender, EventArgs e) {

movePrevious(); }

protected void btnNext_Click(object sender, EventArgs e) {

moveNext(); }

protected void btnLast_Click(object sender, EventArgs e) {

moveLast(); }

//将页面数据导出到excel表格中去

public void ExportToExcel(string FileType, string FileName) {

Response.Charset = \"GB2312\";

Response.ContentEncoding = System.Text.Encoding.Default; Response.AppendHeader(\"Content-Disposition\", \"attachment;filename=\"HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8).ToString());

Response.ContentType = FileType; this.EnableViewState = false; StringWriter tw = new StringWriter();

HtmlTextWriter hw = new HtmlTextWriter(tw); GridView1.RenderControl(hw); Response.Write(tw.ToString()); Response.End(); }

//导出到Excel

protected void btnExport_Click(object sender, EventArgs e) {

ExportToExcel(\"application/ms-excel\",\"水库信息.xls\"); }

//这个事件必须加

public override void VerifyRenderingInServerForm(Control control) {

+

//base.VerifyRenderingInServerForm(control); }

//导出到Word

protected void btnWord_Click(object sender, EventArgs e) {

ExportToExcel(\"application/ms-word\", \"水库信息.doc\"); } }

因篇幅问题不能全部显示,请点此查看更多更全内容