今天有个需求,要把数据显示在一个DataGridView中,为了美观,希望列宽可以只适应内容。

本想着如果实在没办法,就自己写代码实现了,没想到人家自己就提供了简便的方法。

就一行代码:

Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;

这就搞定了,效果就是列宽会根据内容以及表头宽度自行判断,最后调整到合适的宽度。

2010-05-28 补充

AutoSizeMode这个属性并不显示在“属性”窗口中。
如果你的DataGridView是动态绑定数据的,

那就只能在代码中设置。
如果你的DataGridView列名是设计好的,那么可以在DataGridView上点击右键,选择“编辑列”,然后选中你要设置自适应的列,在它的属性列表中的“布局”选项卡里面选择AutoSizeMode的类型。

AutoSizeMode属性可以设置的值还有不少:
成员名称 说明
NotSet  列的大小调整行为从DataGridView.AutoSizeColumnsMode 属性继承。
None  列宽不会自动调整。
AllCells  调整列宽,以适合该列中的所有单元格的内容,包括标题单元格。 
AllCellsExceptHeader  调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格。 
DisplayedCells  调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,包括标题单元格。 
DisplayedCellsExceptHeader  调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,不包括标题单元格。 
ColumnHeader  调整列宽,以适合列标题单元格的内容。 
Fill  调整列宽,使所有列的宽度正好填充控件的显示区域,只需要水平滚动保证列宽在DataGridViewColumn.MinimumWidth属性值以上。相对列宽由相对DataGridViewColumn.FillWeight属性值决定。

另外介绍:

DataGridView

有一个属性是AutoSizeColumnMode,他有几个枚举值:
1、AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格。 
2、AllCellsExceptHeader 调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格。 
3、ColumnHeader 调整列宽,以适合列标题单元格的内容。 
4、DisplayedCells 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,包括标题单元格。 
5、DisplayedCellsExceptHeader 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,不包括标题单元格。 
6、Fill 调整列宽,使所有列的宽度正好填充控件的显示区域,只需要水平滚动保证列宽在DataGridViewColumn.MinimumWidth 属性值以上。相对列宽由相对 DataGridViewColumn.FillWeight 属性值决定。 
7、None 列宽不会自动调整。 
8、NotSet 列的大小调整行为从 DataGridView.AutoSizeColumnsMode 属性继承。

注:如果想要自动设置列宽.在这里就必须把DataGridView的值设置为Fill

this.dataGridView.DataSource = ds.Tables[0];
     this.dataGridView.Columns[0].FillWeight = 10;      //第一列的相对宽度为10%
     this.dataGridView.Columns[1].FillWeight = 20;      //第二列的相对宽度为20%
     this.dataGridView.Columns[2].FillWeight = 30;      //第三列的相对宽度为30%
     这里的值是相对于DataGridView当前的总宽度的,所以窗体最大化和缩小的效果是不一样的,但比例不变
注:如何给每列设置标头
     设置标题字段(先把ColumnsHeadersVisible设置为true)
     this.dataGridView.Columns[0].HeaderText = "编号";
     this.dataGridView.Columns[1].HeaderText = "日期";
     this.dataGridView.Columns[2].HeaderText = "标题";

DataGridView 列宽设置相关推荐

  1. datagridview固定列宽_winform中的DataGridView的列宽设置

    DataGridView有一个属性AutoSizeColumnMode,他有很多枚举值: 1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格. 2.AllCellsExce ...

  2. QTableView表格视图的列宽设置

    QTableView表格视图的列宽设置 Qt中的表格控件可以通过从QTableView或QTableWidget派生子类实现.其中,QTableWidget只是对QTableView的一种简单封装.因 ...

  3. EasyExcel代码层面设置写出的Excel样式、以及拦截器策略的使用、自动列宽设置、EasyExcel默认设置详解

    一.概述 虽然EasyExcel已经提供了一系列注解方式去设置样式. 但是如果没有实体类,或者想要更精确的去设置导出文件的Excel样式的时候就需要在代码层面去控制样式了. 二.使用已有拦截器自定义样 ...

  4. QTableView 列宽设置解释

    1.列宽设置如下: view->setColumnWidth(1, 100);//设置第1列宽100view->resizeColumnToContents(1);//设置第1列宽度自适应 ...

  5. DataGridView的列宽设置

    DataGridView有一个属性是AutoSizeColumnMode,他有几个属性: AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格. AllCellsExceptHe ...

  6. [C#] winform中的DataGridView的列宽设置(自动调整列宽)

    找了很多都说DataGridView有一个属性AutoSizeColumnMode,他有很多枚举值: 1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格.  2.AllCe ...

  7. datagridview固定列宽_[C#] winform中的DataGridView的列宽设置(自动调整列宽)

    1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格. 2.AllCellsExceptHeader 调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格. 3.Col ...

  8. winform中的DataGridView的列宽设置(自动调整列宽)

    找了很多都说DataGridView有一个属性AutoSizeColumnMode,他有很多枚举值: 1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格.   2.AllC ...

  9. DataGridView的列宽设置(自动调整列宽)

    AutoSizeColumnsMod属性,具体值和功能: 1.AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格. 2.AllCellsExceptHeader 调整列宽,以适 ...

最新文章

  1. 革命就是请客吃饭(案例分析吧)
  2. 机器学习圣杯:图灵奖得主Bengio和LeCun称自监督学习可使AI达到人类智力水平
  3. 在Foreda8上试安装Apchehttpd-2.4.6.tar.gz
  4. Spring 事务管理高级应用难点剖析--转
  5. Android笔记-使用okhttp3库发送http请求
  6. 过去几年的互联网经济,首先是“免费经济”
  7. 软件测试面试题(2020.6.29)
  8. 磁盘阵列卡组建磁盘阵列
  9. 【计算机图形学 】绘制椭圆 | OpenGL+鼠标交互
  10. 用计算机sp画笑脸,Microsoft Office Visio绘画圆形笑脸的相关操作步骤
  11. 快速上手MATLAB
  12. Spring Boot 1.5.10项目引入knife4j接口文档
  13. 网络应用---网络应用的需求与传输层服务
  14. 科技对我们生活有哪些影响?未来科技的发展趋势是什么?
  15. 立创EDA导出3d模型到Altimu Designer
  16. vue-amap实现多种形式的地理围栏效果
  17. mysql学号数据类型_数据库常见数据类型和约束
  18. robot selenium+python 对火狐浏览器进行网页自动化测试 报错历程
  19. 大麦演唱会为什么总抢不到票?抢票完整教程、详细步骤
  20. java数据过载_垃圾收集过载,Java

热门文章

  1. 闭环伺服步进电机控制算法
  2. 2017-02-20 Sql Server2016安装后无法找到Microsoft Sql Server Management Studio管理器
  3. 总监设计师一夫老师亲授photoshop淘宝美工就业初级阶段到阶段视频课程-王诚-专题视频课程...
  4. 运营商推互联网套餐真是为他人做嫁衣裳
  5. 100万剂80吨!菜鸟国际医药冷链将国产13价肺炎疫苗运抵摩洛哥
  6. 2022年熔化焊接与热切割免费试题及熔化焊接与热切割模拟考试题库
  7. 上海居民快被垃圾分类逼疯!这个深度学习技术帮你做到垃圾自动分类
  8. 2022-2028全球与中国电子认证服务市场现状及未来发展趋势
  9. java jdk 下载镜像,Docker之JDK镜像
  10. 2017多校第9场 HDU 6169 Senior PanⅡ 数论,DP,爆搜