c#dataGridView分页显示数据

//分页bean
public class PageBean
    {
       private int _TotalPage;
       private int _CurrentPage;
       private int _TotalRows;
       private int _PageSize;

       public int TotalPage
       {
           get
           {
               return _TotalPage;
           }

           set
           {
               _TotalPage = value;
           }
       }

       public int CurrentPage
       {
           get
           {
               return _CurrentPage;
           }

           set
           {
               _CurrentPage = value;
           }
       }

       public int TotalRows
       {
           get
           {
               return _TotalRows;
           }

           set
           {
               _TotalRows = value;
           }
       }

       public int PageSize
       {
           get
           {
               return _PageSize;
           }

           set
           {
               _PageSize = value;
           }
       }
    }

/ ****主程序**** /

//实例化分页bean
       private PageBean pageBean = new PageBean();


       private void _ShowAllIns_Load(object sender, EventArgs e)
       {
           pageBean.PageSize = 27;
           pageBean.CurrentPage = 1;

           FillData();
       }

 

//获取指定数据的条件
private string GetCondition()
{
...
}

 

//填充数据
private void FillData()
{
    PageBll.SetPageBean(pageBean, GetCondition());
    dataGridViewX1.DataSource = GetAllIns(GetCondition(),pageBean);

     NowPage.Text= pageBean.CurrentPage.ToString();//显示当前页数
    TotlePage.Text = pageBean.TotalPage.ToString();//显示总页数
}


/ ***逻辑*** /
 /// < summary >
 /// 设置显示的总页数
 /// < /summary >
 /// < param name="pageBean">
 /// < param name="condition">获取数据约束条件
 /// < returns>
 public static void SetPageBean(PageBean pageBean,string condition)
 {
    pageBean.TotalRows = 获取数据的函数(condition);

    if (pageBean.TotalRows % pageBean.PageSize == 0)
         pageBean.TotalPage = pageBean.TotalRows / pageBean.PageSize;
    else
         pageBean.TotalPage = (pageBean.TotalRows / pageBean.PageSize) +1;
 }

 

       /// < summary>
       /// 获取总行数(可加限制条件) 分页显示
       /// < /summary>
       /// < param name="c">
       /// < returns>
       public static int GetTotalCount(string condition)
       {
           string sql = "select count(*) from InstrumentInfo where 1=1 " +condition;
           return (int)DBHelper.ExecuteScalar(sql);
       }

 

/// < summary>
/// 获取所有数据 (分页用)
/// < /summary>
/// < returns>
public static DataTable GetAllIns(string condition, PageBeanpageBean)
{
   string sql = @"selecttt.InstrumentName 器械名称,
                        Spec 规格,
                        (case when OperationName is NULL then '无' else OperationName end)关联手术,
                                   Times 使用次数,
                             (case when IsUsing = 1 then '是' else '否' end) 使用中,
                             (case when State = 1 then '正常' else '已报废' end) 状态,
                             Division 一级目录,
                             SubDivision 二级目录,
                             BindTime 绑定时间,
                       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值