DataGridView列自适应宽度
来源:http://www.cnblogs.com/wolf-sun/p/3480104.html
在做winform项目中,数据控件DataGridView的使用多多少少是会用到的,如果不设置它的属性,默认情况下是不会自适应宽度的,你想查看某项的数据,就不得不将标题栏拖来拖去,挺烦的。
结果
没设置自适应列宽的
使用自适应列宽的
185 /// <summary> 186 /// 使DataGridView的列自适应宽度 187 /// </summary> 188 /// <param name="dgViewFiles"></param> 189 private void AutoSizeColumn(DataGridView dgViewFiles) 190 { 191 int width = 0; 192 //使列自使用宽度 193 //对于DataGridView的每一个列都调整 194 for (int i = 0; i < dgViewFiles.Columns.Count; i++) 195 { 196 //将每一列都调整为自动适应模式 197 dgViewFiles.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells); 198 //记录整个DataGridView的宽度 199 width += dgViewFiles.Columns[i].Width; 200 } 201 //判断调整后的宽度与原来设定的宽度的关系,如果是调整后的宽度大于原来设定的宽度, 202 //则将DataGridView的列自动调整模式设置为显示的列即可, 203 //如果是小于原来设定的宽度,将模式改为填充。 204 if (width > dgViewFiles.Size.Width) 205 { 206 dgViewFiles.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells; 207 } 208 else 209 { 210 dgViewFiles.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; 211 } 212 //冻结某列 从左开始 0,1,2 213 dgViewFiles.Columns[1].Frozen = true; 214 }
调用:
//调整列宽AutoSizeColumn(dgViewFiles);
代码中有用到通过反射属性来获取特殊名称来绑定DataGridView
http://www.cnblogs.com/wolf-sun/p/3854262.html
/// <summary> 161 /// 窗体加载 162 /// </summary> 163 /// <param name="sender"></param> 164 /// <param name="e"></param> 165 private void MainForm_Load(object sender, EventArgs e) 166 { 167 //通过反射的方式添加列 168 Type type = typeof(FileMessage); 169 PropertyInfo[] propertyInfos = type.GetProperties(); 170 foreach (PropertyInfo propertyInfo in propertyInfos) 171 { 172 object[] objs = propertyInfo.GetCustomAttributes(typeof(DescriptionAttribute), true); 173 if (objs.Length > 0) 174 { 175 DescriptionAttribute attr = objs[0] as DescriptionAttribute; 176 string result = attr.Description; 177 this.dgViewFiles.Columns.Add(result, result); 178 } 179 } 180 //调整列宽 181 AutoSizeColumn(dgViewFiles); 182 183 184 }
View Code
/// <summary> 11 /// 文件信息 12 /// </summary> 13 public class FileMessage 14 { 15 /// <summary> 16 /// 序号 17 /// </summary> 18 [Description("序号")] 19 public int intCount { get; set; } 20 /// <summary> 21 /// 文件路径 22 /// </summary> 23 [Description("文件路径")] 24 public string strFilePath { set; get; } 25 /// <summary> 26 /// 文件名 27 /// </summary> 28 [Description("文件名")] 29 public string strFileName { set; get; } 30 /// <summary> 31 /// 文件类型 32 /// </summary> 33 [Description("文件类型")] 34 public string strFileType { set; get; } 35 }
View Code
DataGridView列自适应宽度相关推荐
- [Winform]DataGridView列自适应宽度
引言 在做winform项目中,数据控件DataGridView的使用多多少少是会用到的,如果不设置它的属性,默认情况下是不会自适应宽度的,你想查看某项的数据,就不得不将标题栏拖来拖去,挺烦的. 方法 ...
- 沫沫金:2014最新全浏览器兼容左列固定右列自适应宽度技巧大公开
做前端的人肯定会遇到经典的左列固定,右列自适应宽度的样式效果.这种想起来很简单做起来很麻烦的事情今天你有好方案了. --不要信那些什么左侧写固定宽度,右侧不用写宽度属性和浮动属性,浏览器自动就实现右列 ...
- DataGridView列的宽度、行的高度自动调整
注意:DataGridView控件是从.NET Framework 2.0版本开始追加的. 介绍一下DataGridView列的宽度和行的高度,根据单元格或Header的内容(一般是内容全部被表示)自 ...
- 一个三行两列右列固定左列自适应宽度的CSS
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-/ ...
- elementui表格宽度适应内容_解决elementui表格操作列自适应列宽代码示例
本篇文章小编给大家分享一下解决elementui表格操作列自适应列宽代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 写死宽度时是这样的: 开始 ...
- jGrid表格,用shrinkToFit属性设置列的宽度为不自适应表格宽度
jGrid表格里,通常列的宽度会自适应的填充至整个表格,一般当字段多的时候倒没什么关系.但如果表内只有两三个字段,列的宽度自适应表的宽度后,看起来就很别扭. $("#meterTypeGri ...
- elementui表格宽度适应内容_解决elementui表格操作列自适应列宽
业务需要前端根据用户权限动态显示对应按钮,直接把操作列的列宽写死的话,在按钮少的情况下不是那么好看,所以想到了一个骚操作... 写死宽度时是这样的: 开始 给操作列绑定宽度属性 :width=&quo ...
- DataGridView 列宽设置
今天有个需求,要把数据显示在一个DataGridView中,为了美观,希望列宽可以只适应内容. 本想着如果实在没办法,就自己写代码实现了,没想到人家自己就提供了简便的方法. 就一行代码: Column ...
- 两列自适应布局的4种思路
前面的话 前面已经介绍过单列定宽单列自适应的两列布局,而两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式.本文将从float.table.flex和grid来介绍两列自适应布局的4种思路 ...
- html 三列布局(两列自适应,一列固定宽度)
不做过多解释:主要是记录一个完整的布局样式,实现页面大致三列其中左右两列是自适应宽度,中间固定宽度效果. 不多少代码奉上: CSS样式代码: /******************** *公共标签样式 ...
最新文章
- R语言ggplot2可视化:将条形图(bar plot)和线图(line plot)组合在一起并使用双Y轴(double y axis)进行可视化、其中一个Y轴显示为百分比
- 在GridView中如何格式化Money型字段?
- 网站外链优化需要注意哪些事项?
- 【错误记录】Android 应用配置第三方 so 动态库 ( /data/app/comxxx==/base.apk/lib/arm64-v8a]couldn‘t find “libx.so“ )
- bread是可数还是不可数_​面包bread是可数名词还是不可数
- 你有必要知道的一些JavaScript 面试题(中)
- 电脑小白来一起学习计算机基础知识!
- 回顾一年的工作历程_【设备管理公司】召开20202021年度总结计划表彰暨工作述职会议...
- Linux必懂知识大总结(上)
- struts2自定义标签_Struts 2 –没有为动作和结果输入定义结果
- JDK(Install)
- 2018.7.11 昨天晚上的列表(字典)嵌套题
- Bash : 冒泡排序
- android自定义秒表,Android:一个简单的秒表实现
- Tips_linux
- python tkinter界面随分辨率自动调整尺寸,Tkinter画布自动调整大小
- 国产linux凝思4.2系统多网卡指定路由配置
- vue手动封装分页组件
- 骑士旅行问题(骑士走棋盘)
- 开发者特供丨72小时解锁华为黑科技,错过这次又等一年!
热门文章
- 打造金刚不坏之心的秘籍
- 小偷程序原理和简单示例
- Linux 内存管理之 SLUB分配器(6):slub debug 实例测试
- Linux设备驱动模型-Driver
- java接口测试httpclient_httpclient接口测试完整用例
- Linux链表list_head/hlist_head/hlist_nulls_head的并发性
- linux多CPU进程负载均衡解析
- LeetCode入门题 两数之和
- javafx给图形上颜色_红牛商标无效案:新欧盟商标条例下如何满足颜色商标注册条件?...
- 3811.排列-AcWing题库