【WinForm】给各种不同Grid添加数据并设置列头

1.给有【DisplayColumns】和【ColumnNameAlias】属性的Grid添加数据并设置列头

this.winGridView1.DisplayColumns = CallerFactory<IMachineListService>.Instance.GetDisplayColumns();
this.winGridView1.ColumnNameAlias = CallerFactory<IMachineListService>.Instance.GetColumnNameAlias();
//获取查询字符串
string where = GetConditionSql();
//数据绑定
this.winGridView1.DataSource = CallerFactory<IMachineListService>.Instance.GetMachineListInfos(where);
public override Dictionary<string, string> GetColumnNameAlias()
        {
            Dictionary<string, string> dict = new Dictionary<string, string>();
            dict.Add("Guid", "标识");
            dict.Add("Machcode", "设备编号");
            dict.Add("Machname", "设备名称");
            dict.Add("Machtype", "设备类型");
            dict.Add("Location", "设备位置");
            dict.Add("Status", "设备状态");
            dict.Add("Createdate", "创建时间");
            return dict;
        }

        public override string GetDisplayColumns()
        {
            return "Machname,Machtype,Location,Status";
        }

2.给DataGridView添加数据并设置列头

DataGridView

先拿到获取的数据list是一个List类型,但是select来的数据如果我们未经处理的话可能有我们不需要的字段,这时候我们可以在new一个DataTable来装我们需要显示的数据,这里要用到遍历,具体实现如下:

foreach (var i in list)
            {
                DataRow dRow = dTable.NewRow();
                dRow["设备名称"] = i.Machname;
                dRow["设备类型"] = i.Machtype;
                dRow["区域"] = i.Location;
                dRow["状态"] = i.Status;
                dTable.Rows.Add(dRow);
            }
            //给表格加载数据
            this.dataGridView1.DataSource = dTable;
            //设置列宽
            dataGridView1.Columns[0].Width = 90;
            dataGridView1.Columns[1].Width = 90;
            dataGridView1.Columns[2].Width = 90;
            dataGridView1.Columns[3].Width = 67;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,851评论 6 13
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,797评论 1 32
  • 简介 CSS网格布局(又名“网格”)是一个二维的基于网格的布局系统,其目的只在于完全改变我们设计基于网格的用户界面...
    礼知白阅读 3,882评论 0 0
  • 转载地址:https://www.cnblogs.com/xiaohuochai/p/7083153.html 前...
    One_Hund阅读 5,180评论 0 1
  • 开头就先和以前一样先随便唠一下家常吧。当忙碌成了家常,没有学校里安逸的生活,CJ也勤奋了不少。从入职到今天刚好是3...
    洛无事阅读 3,315评论 0 0