C# DataGridView数据绑定的问题 (绑定数据经验分享)

在用.Net开发做Winform程序的时候,显示数据信息,无疑Datagridview是最方便的,

但在使用的时候还是有一些经验需要总结的,希望本文能帮助大家少走一些弯路。

1. DataSource选择问题

2.数据清空的问题

3.DatagridView列属性绑定的问题

 

1)首先说一说DataSource的选择,一般可以选择DataTable或者List进行绑定,这两个都没有问题。

区别:DataTable绑定Datagridview列名的时候是绑定的table的列名称,

           而List需要是一个对象的列表如List<Dog>,绑定Datagridview列名对应的是Dog的属性名称。

注意:应该是区分大小写的。

2)再来说说数据清空的问题,这个问题刚开始学习使用这个控件的时候是最容易犯的问题,第一次绑定没有问题,第二次刷新的时候,数据没有清空,两次的数据都显示到了GridView中,这显然是不对的。

当然,解决办法还是很多的,我只说一种VS2015中使用的方法,我记得之前老版本是另外的方法。

直接上代码:

//清空数据
this.dgvHistory.DataSource = null;
//重新绑定数据          
this.dgvHistory.DataSource = list;

这样就解决了数据清空的问题,还是挺简单的吧!

3)最后是数据列名称绑定的问题,

列属性

常见的问题就是,绑定属性时候大小写问题,这个仔细一点儿就能规避,仔细耐心,不也是程序员的基本素养嘛!

另外一个最重要的就是如上图我明明绑定的数据列,第一次查询结果也能正常显示,但是再次查询却不对了?

列名称显示成了属性的字符串,如下图所示:

我设置的列名不见了????

为什么?那是因为这些在第二次绑定数据的时候自动生成了这些列名,我记得VS2010之前好像是DataGridView属性框里有一项是设置是否允许自动生成列的,设置成False即可解决这个问题,但是VS2015(更新的不知道解决了这个问题没有)没有这个选项,那怎么办?

程序员还得靠代码:

//禁止自动生成列
this.dgvHistory.AutoGenerateColumns = false;

在Form初始化的时候加上这一句,你的Datagridview 就不会出现上图那样的问题了,来看看正常的显示吧

 这样看着是不是更舒服,毕竟这才是我想要的。

 

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

简码笔记

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值