基本信息
源码名称:c# winform分页实例源码下载(原理:存储过程分页)
源码大小:0.10M
文件格式:.rar
开发语言:C#
更新时间:2015-03-13
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace allenPageTest
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
BindDataWithPage(1);
}
//总记录数
public int RecordCount = 0;
private string strConn = "server=B1CMBCS;database=PRDST;uid=apps_prdst;pwd=userprdst98";
//"Server=localhost;database=Db_TonyPaging;uid=sa;pwd=sa;";
private string strProcedure = "_PageTest ";
/// <summary>
/// 绑定第Index页的数据
/// </summary>
/// <param name="Index"></param>
private void BindDataWithPage(int Index)
{
allenPage1.PageIndex = Index;
//winFormPager1.PageSize = 10;; ;
DataTable dt = GetData(strConn, strProcedure, Index, allenPage1.PageSize);
dataGridView1.DataSource = dt;
//获取并设置总记录数
allenPage1.RecordCount = RecordCount;
}
/// <summary>
/// 获取数据源
/// </summary>
/// <param name="conn"></param>
/// <param name="strProcedure"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
private DataTable GetData(string conn, string strProcedure, int pageIndex, int pageSize)
{
using (SqlConnection connection = new SqlConnection(conn))
{
SqlCommand command = new SqlCommand(strProcedure, connection);
command.CommandType = CommandType.StoredProcedure;//采用存储过程
//存储过程参数
command.Parameters.Add("@Table", SqlDbType.NVarChar, 1000).Value = "HoursMIPK";
command.Parameters.Add("@TIndex", SqlDbType.NVarChar, 100).Value = "ID";
command.Parameters.Add("@Column", SqlDbType.NVarChar, 2000).Value = "*";
command.Parameters.Add("@Sql", SqlDbType.NVarChar, 3000).Value = " 1=1 ";
command.Parameters.Add("@PageIndex", SqlDbType.Int, 8).Value = pageIndex.ToString();
command.Parameters.Add("@PageSize", SqlDbType.Int, 8).Value = pageSize.ToString();
command.Parameters.Add("@Sort", SqlDbType.NVarChar, 200).Value = " ID desc";
//打开连接
if (connection.State != ConnectionState.Open) { connection.Open(); }
try
{
//填充数据
SqlDataAdapter da = new SqlDataAdapter(command);
DataSet ds = new DataSet();
da.Fill(ds);
//获取总记录数
RecordCount = Convert.ToInt32(ds.Tables[1].Rows[0][0]);
//返回数据集
return ds.Tables[0];
}
catch (SqlException err)
{
MessageBox.Show(err.Message);
return null; ;
}
finally
{
connection.Close();
}
}
}
private void allenPage1_PageIndexChanged(object sender, EventArgs e)
{
BindDataWithPage(allenPage1.PageIndex);
}
}
}