近期在写一系列的winfrom,按项目需求是需要用dgv显示数据,但问题的难点在于,需要实现分页,而分页按钮绑定的是订单主表的数据,dgv绑定的却是子表的数据,主要是围绕DateTable,根据点击按钮的增减值来获取对应值,
比如我点击下一页当前页为第一页,初值为0,txtClient.Text = dtView.Rows[pagesize]["C_Name"].ToString();//此时下标则增加1
执行则为txtClient.Text = dtView.Rows[1]["C_Name"].ToString();
相比复杂的分页还需要加减乘除的我是每次都用的蒙查查的,以下代码可以直接套用,逻辑都是没有问题的,只需要修改相对应得字段名就可以直接使用了,写的不好还请多多包涵,谢谢!
先上图.........
//定义常量
private int Inum = 1; //行号,规定其索引初始值为1
int pagesize = 0; //当前页数
int pageCount = 0; //总页数
绑定dgv初始数据以及一系列控件的数据绑定
private void bindingData()//窗体加载时调用
{
string Sqlstr = "select * from D_DD1 a,Company b where CC='+' and b.Company_ID=a.Company_ID";
DataTable dtView = SqlDBHelp.GetTable(Sqlstr);//SqlDBHelp数据库操作类
pageCount = dtView.Rows.Count; //获取数据表中记录的个数
if (Inum > pageCount)
{
Inum--;
return;
}
else
{
if (pageCount != 0)
{
this.txtPage.Text = Inum.ToStri