开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 43012|回复: 186

分页控件,你值得拥有

  [复制链接]

0

精华

145

贡献

25

赞扬

帖子
59
软币
379
在线时间
74 小时
注册时间
2017-5-10
发表于 2017-7-19 10:14:00 | 显示全部楼层 |阅读模式
此控件非本人所写
来自于网络,我只是将控件的DEV 版本升级到了17.1.如果你觉得好请支持正版!

说明文档
文档说明.rar (2.75 MB, 下载次数: 967)

控件下载
游客,如果您要查看本帖隐藏内容请回复




load事件中添加如下代码添加事件:
[C#] 纯文本查看 复制代码
{    
    BindData(); 
    this.winGridViewPager1.OnPageChanged += new EventHandler(winGridViewPager1_OnPageChanged);    
    this.winGridViewPager1.OnStartExport += new EventHandler(winGridViewPager1_OnStartExport);    
    this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);    
    this.winGridViewPager1.OnDeleteSelected += new EventHandler(winGridViewPager1_OnDeleteSelected);    
    this.winGridViewPager1.OnRefresh += new EventHandler(winGridViewPager1_OnRefresh);    
    this.winGridViewPager1.OnAddNew += new EventHandler(winGridViewPager1_OnAddNew);    
    this.winGridViewPager1.AppendedMenu = this.contextMenuStrip1;   
}


事件执行代码的实现如下所示,包含分页事件、刷新事件、删除事件、编辑事件、新增事件、导出Excel事件等。
[C#] 纯文本查看 复制代码
private void winGridViewPager1_OnPageChanged(object sender, EventArgs e)    
{    
    BindData();    
}    
   
private void winGridViewPager1_OnRefresh(object sender, EventArgs e)    
{    
    BindData();    
}    
   
private void winGridViewPager1_OnDeleteSelected(object sender, EventArgs e)    
{    
    if (MessageUtil.ShowYesNoAndTips("您确定删除选定的记录么?") == DialogResult.No)    
    {    
        return;    
    }    
   
    DataGridView grid = sender as DataGridView;    
    if (grid != null)    
    {    
        foreach (DataGridViewRow row in grid.SelectedRows)    
        {    
            BLLFactory<Customer>.Instance.Delete(row.Cells[0].Value.ToString());    
        }    
        BindData();    
    }    
}    
   
private void winGridViewPager1_OnEditSelected(object sender, EventArgs e)    
{    
    DataGridView grid = sender as DataGridView;    
    if (grid != null)    
    {    
        foreach (DataGridViewRow row in grid.SelectedRows)    
        {    
            FrmEditCustomer dlg = new FrmEditCustomer();    
            dlg.ID = row.Cells[0].Value.ToString();    
            if (DialogResult.OK == dlg.ShowDialog())    
            {    
                BindData();    
            }    
   
            break;    
        }    
    }    
}    
   
private void winGridViewPager1_OnAddNew(object sender, EventArgs e)    
{    
    btnAddNew_Click(null, null);    
}    
   
private void winGridViewPager1_OnStartExport(object sender, EventArgs e)    
{    
    string where = GetSearchSql();    
    this.winGridViewPager1.AllToExport = BLLFactory<Customer>.Instance.FindToTable(where);    
}    
   
private void BindData()    
{   
    #region 添加别名解析    
    this.winGridViewPager1.AddColumnAlias("ID", "编号");    
    this.winGridViewPager1.AddColumnAlias("Number", "客户编号");    
    this.winGridViewPager1.AddColumnAlias("Name", "客户名称");    
    this.winGridViewPager1.AddColumnAlias("Type", "客户类型");    
    this.winGridViewPager1.AddColumnAlias("Area", "客户地区");    
    this.winGridViewPager1.AddColumnAlias("Company", "客户单位");    
    this.winGridViewPager1.AddColumnAlias("Address", "客户地址");    
    this.winGridViewPager1.AddColumnAlias("Telephone1", "电话1");    
    this.winGridViewPager1.AddColumnAlias("Telephone2", "电话2");    
    this.winGridViewPager1.AddColumnAlias("Telephone3", "电话3");    
    this.winGridViewPager1.AddColumnAlias("Telephone4", "电话4");    
    this.winGridViewPager1.AddColumnAlias("Telephone5", "电话5");    
    this.winGridViewPager1.AddColumnAlias("CreateDate", "开户日期");    
    this.winGridViewPager1.AddColumnAlias("Shop_ID", "分店ID");    
    this.winGridViewPager1.AddColumnAlias("Note", "备注");    
    this.winGridViewPager1.AddColumnAlias("LastUpdated", "更新日期");   
    #endregion    
   
   
    string where = GetSearchSql();    
    this.winGridViewPager1.DataSource = BLLFactory<Customer>.Instance.Find(where, this.winGridViewPager1.PagerInfo);    
    this.winGridViewPager1.dataGridView1.Refresh();    
}


如果不想把所有的实体类属性或者表字段都显示处理(默认全部显示),那么可以设置属性DisplayColumns即可。
[C#] 纯文本查看 复制代码
this.winGridViewPager1.DisplayColumns = "ID,ItemNo,ItemName,Manufacture,MapNo,Specification,StockQuantity,AlarmQuantity,WareHouse";   

报表标题如下所示:
[C#] 纯文本查看 复制代码
this.winGridViewPager1.PrintTitle = Portal.gc.gAppUnit + " -- " + "备件信息报表";   


绑定自定义Datatable对象的实现:
[C#] 纯文本查看 复制代码
private void BindData()    
{    
    this.winGridViewPager1.DisplayColumns = "ID,ItemNo,ItemName,Manufacture,MapNo,Specification,Material,ItemBigType,ItemType,
Unit,Price,Source,StoragePos,UsagePos,StockQuantity,AlarmQuantity,Note,Dept,WareHouse";   
    #region 添加别名解析    
   
    this.winGridViewPager1.AddColumnAlias("ID", "编号");    
    this.winGridViewPager1.AddColumnAlias("ItemNo", "项目编号");    
    this.winGridViewPager1.AddColumnAlias("ItemName", "项目名称");    
    this.winGridViewPager1.AddColumnAlias("Manufacture", "供货商");    
    this.winGridViewPager1.AddColumnAlias("MapNo", "图号");    
    this.winGridViewPager1.AddColumnAlias("Specification", "规格型号");    
    this.winGridViewPager1.AddColumnAlias("Material", "材质");    
    this.winGridViewPager1.AddColumnAlias("ItemBigType", "备件属类");    
    this.winGridViewPager1.AddColumnAlias("ItemType", "备件类别");    
    this.winGridViewPager1.AddColumnAlias("Unit", "单位");    
    this.winGridViewPager1.AddColumnAlias("Price", "单价");    
    this.winGridViewPager1.AddColumnAlias("Source", "来源");    
    this.winGridViewPager1.AddColumnAlias("StoragePos", "库位");    
    this.winGridViewPager1.AddColumnAlias("UsagePos", "使用位置");    
    this.winGridViewPager1.AddColumnAlias("StockQuantity", "当前库存");    
    this.winGridViewPager1.AddColumnAlias("WareHouse", "所属库房");    
    this.winGridViewPager1.AddColumnAlias("Dept", "所属部门");    
    this.winGridViewPager1.AddColumnAlias("Note", "备注");   
  
    #endregion    
   
    string where = GetConditionSql();    
    List<ItemDetailInfo> list = BLLFactory<ItemDetail>.Instance.Find(where, this.winGridViewPager1.PagerInfo);    
    string tableColumns = "ID|int,ItemNo,ItemName,StockQuantity|int,Manufacture,MapNo,Specification,Material,ItemBigType,ItemType,
Unit,Price|decimal,Source,StoragePos,UsagePos,Note,WareHouse,Dept";    
    DataTable dt = DataTableHelper.CreateTable(tableColumns);    
    DataRow dr = null;    
    foreach (ItemDetailInfo info in list)    
    {    
        dr = dt.NewRow();    
        dr["ID"] = info.ID;    
        dr["ItemBigType"] = info.ItemBigType;    
        dr["ItemName"] = info.ItemName;    
        dr["ItemNo"] = info.ItemNo;    
        dr["ItemType"] = info.ItemType;    
        dr["Manufacture"] = info.Manufacture;    
        dr["MapNo"] = info.MapNo;    
        dr["Material"] = info.Material;    
        dr["Note"] = info.Note;    
        dr["Price"] = info.Price;    
        dr["Source"] = info.Source;    
        dr["Specification"] = info.Specification;    
        dr["StoragePos"] = info.StoragePos;    
        dr["Unit"] = info.Unit;    
        dr["UsagePos"] = info.UsagePos;    
        dr["WareHouse"] = info.WareHouse;    
        dr["Dept"] = info.Dept;    
   
        StockInfo stockInfo = BLLFactory<Stock>.Instance.FindByItemNo(info.ItemNo);    
        int quantity = 0;    
        if (stockInfo != null)    
        {    
            quantity = stockInfo.StockQuantity;    
        }    
        dr["StockQuantity"] = quantity;    
        dt.Rows.Add(dr);    
    }    
   
    this.winGridViewPager1.DataSource = dt.DefaultView;//new WHC.Pager.WinControl.SortableBindingList<ItemDetailInfo>(list);    
    this.winGridViewPager1.PrintTitle = Portal.gc.gAppUnit + " -- " + "备件信息报表";    
}




部分效果图




01.png
02.png
分页02.jpg
分页01.jpg

评分

参与人数 3赞扬 +3 收起 理由
1346434442 + 1
BaronQiu + 1 很给力
siukwan + 1 赞一个

查看全部评分

回复

使用道具 举报

0

精华

-6

贡献

42

赞扬

帖子
122
软币
2778
在线时间
893 小时
注册时间
2013-6-17
发表于 2017-7-19 12:55:33 | 显示全部楼层
http://pan.baidu.com/s/1i4PndIX
提取码:if9h
回复

使用道具 举报

0

精华

10

贡献

0

赞扬

帖子
73
软币
3970
在线时间
403 小时
注册时间
2017-6-19
发表于 2017-7-19 15:48:07 | 显示全部楼层
thank you very much
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
2
软币
67
在线时间
3 小时
注册时间
2017-7-31
发表于 2017-7-31 15:59:09 | 显示全部楼层
我也想下载来看下, 自己弄了个不好用
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
2
软币
67
在线时间
3 小时
注册时间
2017-7-31
发表于 2017-7-31 22:19:59 | 显示全部楼层
根本没用,就是之前的dll文件
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
2
软币
67
在线时间
2 小时
注册时间
2017-8-1
发表于 2017-8-1 17:21:18 | 显示全部楼层
楼主好人啊
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
37
软币
172
在线时间
22 小时
注册时间
2017-8-2
发表于 2017-8-3 09:49:57 | 显示全部楼层
不错,我需要
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
17
软币
132
在线时间
12 小时
注册时间
2017-3-25
发表于 2017-8-6 07:55:24 | 显示全部楼层
不错,正好需要,谢谢。
回复

使用道具 举报

0

精华

5

贡献

28

赞扬

帖子
85
软币
460
在线时间
35 小时
注册时间
2014-12-16
发表于 2017-8-10 13:28:44 | 显示全部楼层
这么好的东东,太好了
回复

使用道具 举报

0

精华

0

贡献

101

赞扬

帖子
98
软币
1236
在线时间
132 小时
注册时间
2017-4-14
发表于 2017-8-11 09:29:29 | 显示全部楼层
thanks  fri tiy]
回复

使用道具 举报

0

精华

590

贡献

10

赞扬

帖子
47
软币
267
在线时间
19 小时
注册时间
2015-3-16
发表于 2017-8-11 17:23:25 | 显示全部楼层
感谢!!!辛苦了。
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
8
软币
138
在线时间
9 小时
注册时间
2017-8-4
发表于 2017-8-11 19:56:50 | 显示全部楼层
来看看,支持
回复

使用道具 举报

0

精华

0

贡献

26

赞扬

帖子
55
软币
568
在线时间
75 小时
注册时间
2016-3-25
发表于 2017-8-17 15:12:54 | 显示全部楼层
good good godd
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
9
软币
109
在线时间
9 小时
注册时间
2017-7-15
发表于 2017-8-21 15:59:54 | 显示全部楼层
看看,学习学习
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
15
软币
85
在线时间
6 小时
注册时间
2017-8-25
发表于 2017-8-31 22:01:41 | 显示全部楼层
谢谢楼楼分享
回复

使用道具 举报

0

精华

0

贡献

29

赞扬

帖子
72
软币
351
在线时间
33 小时
注册时间
2017-8-5
发表于 2017-9-5 22:11:02 | 显示全部楼层
值得拥有,谢谢分享
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
38
软币
148
在线时间
10 小时
注册时间
2017-9-5
发表于 2017-9-6 16:55:19 | 显示全部楼层
看起来还不错的样子
回复

使用道具 举报

0

精华

0

贡献

65

赞扬

帖子
121
软币
2111
在线时间
224 小时
注册时间
2013-11-13
发表于 2017-9-7 14:54:33 | 显示全部楼层
非常感谢分享!~~
回复

使用道具 举报

0

精华

957

贡献

1909

赞扬

正版授权组

Rank: 14Rank: 14Rank: 14Rank: 14

帖子
319
软币
15477
在线时间
1530 小时
注册时间
2013-6-9
发表于 2017-9-13 09:07:18 | 显示全部楼层
多谢分享,很实用
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
11
软币
71
在线时间
1 小时
注册时间
2017-9-8
发表于 2017-9-13 10:16:23 | 显示全部楼层
看看是什么用途的代码
回复

使用道具 举报

0

精华

145

贡献

25

赞扬

帖子
59
软币
379
在线时间
74 小时
注册时间
2017-5-10
 楼主| 发表于 2017-9-13 11:52:52 | 显示全部楼层
ZYFHYC 发表于 2017-7-19 12:55
http://pan.baidu.com/s/1i4PndIX
提取码:

说实话。我很讨厌你这种行为。为什么只是设置隐藏而不是收费。
就是想让更多人看帖回帖。让论坛活跃一下气氛。
回复

使用道具 举报

0

精华

601

贡献

40

赞扬

帖子
18
软币
184
在线时间
15 小时
注册时间
2015-12-16
QQ
发表于 2017-9-17 12:29:16 | 显示全部楼层
不错,正好需要,谢谢。
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
20
软币
135
在线时间
7 小时
注册时间
2017-8-22
发表于 2017-10-21 18:55:13 | 显示全部楼层
许uxuuxuxuxu 得到放大放大放大
回复

使用道具 举报

0

精华

601

贡献

10

赞扬

帖子
22
软币
142
在线时间
8 小时
注册时间
2016-3-12
发表于 2017-10-24 21:51:01 | 显示全部楼层
牛人真多啊,参考 了
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-4-20 03:00

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表