`
镭风【CHN】
  • 浏览: 108973 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

DataGridView分页控件

阅读更多
最近项目需要自己写了一个用来给DataGridView分页用的控件。
考虑到分页效率的原因,没有在控件中对DataSource进行处理,所以这个控件就是一个放置DataGridView的容器,提供一个工具栏。

效果图如下:


在设计模式下可以为容器添加绑定的DataGridView,并设置工具栏的位置。


需要说明的是需要在初始化的时候调用
public void Initialization(int pageRowCapacity, int rowCount)方法,给控件初始化。

实际使用来看效果还不错,呵呵,可以做到对源项目中使用DataGridView的画面提供无缝支持。

一个调用的例子。
public partial class Form1 : Form
{
    private OrderBiz orderBiz;
    private const int pageRowCapacity = 15;

    public Form1()
    {
       InitializeComponent();
       dataGridView1.AutoGenerateColumns = false;
    }

     private void Form1_Load(object sender, EventArgs e)
     {
       orderBiz = new OrderBiz(pageRowCapacity);
       pagingDataGridView1.Initialization(pageRowCapacity, orderBiz.GetSumPersons());
       BindingDate(0);
     }

     private void pagingDataGridView1_PageDownClick(object sender, PageChangeEventArgs e)
     {
        BindingDate(e.NextPageRowNumber);
     }

     private void BindingDate(int startRowNumber)
     {         pagingDataGridView1.BindingData(orderBiz.GetPersonsDataSource(startRowNumber), startRowNumber);
     }
}

附件中有源代码和dll文件下载。
  • 大小: 2.3 KB
  • 大小: 15 KB
3
2
分享到:
评论
3 楼 镭风【CHN】 2014-06-26  
qiqiandfei 写道
请问Orderbiz类 在哪里定义的 没有找到啊

不好意思,时间太久了,我很久没看过了,麻烦亲自己研究下
2 楼 qiqiandfei 2014-02-26  
请问Orderbiz类 在哪里定义的 没有找到啊
1 楼 ymmt 2010-07-11  
你好,我下载了代码文件,把这个控件拖到窗体上后,另外又拖了一个DataGridView控件,按照文中图二的方法绑定了DataGridView控件,但并没有出现图二所示的效果,列没有显示出来(DataGridView控件中已经添加了列)。不知道我的操作哪里出了问题,请指教一下,谢谢。

相关推荐

Global site tag (gtag.js) - Google Analytics