⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mydgpaging.aspx.cs

📁 ASP C#代码实例 适合初学人士学习使用
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Configuration;

namespace Example_9_4
{
	/// <summary>
	/// Summary description for MyDGPaging.
	/// </summary>
	public class MyDGPaging : System.Web.UI.Page
	{
		protected System.Web.UI.WebControls.DataGrid CustomerDatagrid;
		protected System.Web.UI.WebControls.LinkButton PageFirst;
		protected System.Web.UI.WebControls.LinkButton PagePrev;
		protected System.Web.UI.WebControls.LinkButton PageNext;
		protected System.Web.UI.WebControls.LinkButton PageLast;
		private readonly string SQLCONNECTIONSTRING = ConfigurationSettings.AppSettings["SQLCONNECTIONSTRING"].ToString();
	
		private void Page_Load(object sender, System.EventArgs e)
		{
			if(!Page.IsPostBack)
			{
				BindDataGrid();

				//控制页面导向按钮的可见性
          IsFirstLastPage();
			}
		}

		private void BindDataGrid()
		{
			SqlConnection myConnection = new SqlConnection(SQLCONNECTIONSTRING);
			String cmdText = "Select * FROM Staff";
			SqlDataAdapter da = new SqlDataAdapter(cmdText,myConnection);
			myConnection.Open();

			///创建控件的数据源——DataSet对象
			DataSet ds = new DataSet();
			da.Fill(ds);

			///绑定控件的数据
			CustomerDatagrid.DataSource = ds;
			CustomerDatagrid.DataBind();

			///关闭数据库的链接
			myConnection.Close();
		}

		private void myDataGrid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
		{
			CustomerDatagrid.CurrentPageIndex = e.NewPageIndex;
			BindDataGrid();
		}

		/// <summary>
		/// 实现分页机制
		/// </summary>
		private void PageCut_Click(object sender, System.EventArgs e)
		{
		  String commangArg = ((LinkButton)sender).CommandArgument;

			switch(commangArg)
			{				
				case "First":
				{
					//首页
					CustomerDatagrid.CurrentPageIndex = 0;
					break;
				}					
				case "Prev":
				{
					//上一页
					CustomerDatagrid.CurrentPageIndex = (int)Math.Max(0,CustomerDatagrid.CurrentPageIndex - 1);
					break;
				}					
				case "Next":
				{ 
					//下一页
					CustomerDatagrid.CurrentPageIndex = (int)Math.Min(CustomerDatagrid.PageCount -1,CustomerDatagrid.CurrentPageIndex +1);
					break;
				}					
				case "Last":
				{
					//最后一页
					CustomerDatagrid.CurrentPageIndex = CustomerDatagrid.PageCount -1;
					break;
				}
				default:
				{
					break;
				}
			}

			//重新绑定CustomerDatagrid的数据
			BindDataGrid();

			//控制页面导向按钮的可见性
      IsFirstLastPage();
		}	

		/// <summary>
		/// 控制页面导向按钮的可见性
		/// </summary>
		private void IsFirstLastPage()
		{
			if(CustomerDatagrid.PageCount > 0)
			{
				if(CustomerDatagrid.PageCount != 1)
				{
					if(CustomerDatagrid.CurrentPageIndex == 0)
					{
						PagePrev.Enabled = false;
					}
					else
					{
						PagePrev.Enabled = true;
					}
					if(CustomerDatagrid.CurrentPageIndex == CustomerDatagrid.PageCount -1)
					{
						PageNext.Enabled = false;
					}
					else
					{
						PageNext.Enabled = true;
					}
				}
				else
				{
					PagePrev.Enabled = false;
					PageNext.Enabled = false;
				}
			}
			else
			{
				PageFirst.Enabled = false;
				PageLast.Enabled = false;
				PageNext.Enabled = false;
				PagePrev.Enabled = false;
			}
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
			this.CustomerDatagrid.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.myDataGrid_PageIndexChanged);
			this.PageFirst.Click += new System.EventHandler(this.PageCut_Click);
			this.PagePrev.Click += new System.EventHandler(this.PageCut_Click);
			this.PageNext.Click += new System.EventHandler(this.PageCut_Click);
			this.PageLast.Click += new System.EventHandler(this.PageCut_Click);
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -