标题:[求助]DataSouce是DataSet的DataGridView的列宽如何设置呢
只看楼主
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
 问题点数:0 回复次数:9 
[求助]DataSouce是DataSet的DataGridView的列宽如何设置呢
以前是在添加DataGridView控件的时候,在添加列的时候就地设置啦
现在我先建了一个DataTable(里面设了几个列)然后将DataTable添加到DataSet里,然后和DataGridView进行绑定,这时候的列宽应该如何设置呢?
是通过代码吗?
如果是,代码怎么写?
搜索更多相关主题的帖子: DataGridView DataSet DataSouce 设置 
2007-09-20 13:52
jxnuwy04
Rank: 2
等 级:新手上路
威 望:4
帖 子:768
专家分:0
注 册:2006-9-15
得分:0 
你不是要拖一个DataGridView到页面上吗,直接设置就可以了!不知道你是不是这个意思?

------------------不为别的,就为你,我的理想!-----------------
2007-09-20 14:09
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
得分:0 
楼主是说让datagridview的列宽正好适合于数据显示的长度是吗?
这样的话你可以在datagridview刷新加载数据的事件里写上一句代码:dataGridView1.AutoResizeColumns();就行了

努力成为菜鸟!
2007-09-20 14:39
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
得分:0 
cobby(三楼)的方法还是不错的..我有这方面的意思!!!但不是本题的愿意!这个方法可以满足我的一部分要求!
我的本意是...就像jxnuwy04(二楼)说的一样..在拖进DataGridView的时候,可以设置每列的宽度,但是:前提必须是你得加入列..如果在拖进的时候不加入具体的列的话,怎么设置呢?

我的意思就是要那种效果,就是固定的列宽,就像设置的那样,但现在,,他的列不是在拖放的时候添加的,,而是靠代码添加的,,那么这个时候..该怎么设置呢?

我想还得写代码..但怎么写呢?

msdn == 葵花宝典!!!
QQ:122768959
2007-09-20 18:03
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
得分:0 
没人会吗?还是我没说明白呢?

msdn == 葵花宝典!!!
QQ:122768959
2007-10-10 10:46
crazymk
Rank: 1
等 级:新手上路
威 望:1
帖 子:343
专家分:0
注 册:2007-8-30
得分:0 
在綁定之後做一個DGV中的列遍歷吧。

すばらしいコードを書き出すのは楽しい事です
2007-10-10 12:02
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
得分:0 

我总结了一下.因为你没写出字段.所以就自己想了几个字段

DataGridView有一个属性是AutoSizeColumnMode,他有几个属性:

AllCells 调整列宽,以适合该列中的所有单元格的内容,包括标题单元格。
AllCellsExceptHeader 调整列宽,以适合该列中的所有单元格的内容,不包括标题单元格。
ColumnHeader 调整列宽,以适合列标题单元格的内容。
DisplayedCells 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,包括标题单元格。
DisplayedCellsExceptHeader 调整列宽,以适合当前屏幕上显示的行的列中的所有单元格的内容,不包括标题单元格。
Fill 调整列宽,使所有列的宽度正好填充控件的显示区域,只需要水平滚动保证列宽在 DataGridViewColumn.MinimumWidth 属性值以上。相对列宽由相对 DataGridViewColumn.FillWeight 属性值决定。
None 列宽不会自动调整。
NotSet 列的大小调整行为从 DataGridView.AutoSizeColumnsMode 属性继承。
设置为Fill.
然后先给DataGridView绑定数据源.然后
DataSet ds2 = momedal.Binddvg(flagcbb);
this.dgvMain.DataSource = ds2.Tables[0];
this.dgvMain.Columns[0].FillWeight = 8; //第一列的相对宽度为8%
this.dgvMain.Columns[1].FillWeight = 22; //第一列的相对宽度为22%
this.dgvMain.Columns[2].FillWeight = 70; //第一列的相对宽度为70%
设置标题字段(先把ColumnsHeadersVisible设置为true)
this.dgvMain.Columns[0].HeaderText = "编号";
this.dgvMain.Columns[1].HeaderText = "日期";
this.dgvMain.Columns[2].HeaderText = "标题";


希望对你能有所启发

如果还是没明白.可以继续探讨

[此贴子已经被作者于2007-10-10 12:26:05编辑过]


有实力才会有魅力 实力来自坚持不懈的努力
2007-10-10 12:24
andey
Rank: 2
等 级:新手上路
威 望:4
帖 子:938
专家分:0
注 册:2007-7-18
得分:0 
师妃暄:
谢谢你..解决啦!呵呵..
crazymk:
也谢谢你..你不是第一次帮我啦
为这么多热心人感到高兴..
谢谢这个论坛啦!!

msdn == 葵花宝典!!!
QQ:122768959
2007-10-10 15:37
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
得分:0 
独学且无友.则孤陋而寡闻

所以很愿意把知识和大家一起分享.呵

有实力才会有魅力 实力来自坚持不懈的努力
2007-10-10 16:01
QJlin
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:3
帖 子:186
专家分:560
注 册:2013-5-18
得分:0 
以下是引用andey在2007-10-10 15:37:40的发言:

师妃暄:<BR>谢谢你..解决啦!呵呵..<BR>crazymk:<BR>也谢谢你..你不是第一次帮我啦<BR>为这么多热心人感到高兴..<BR>谢谢这个论坛啦!!

我也遇到这个问题了,你解决了能发下代码我看看学校下么···

慢慢前进走,不求一步登天,只求慢慢前进
2013-05-19 22:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-171489-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.075159 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved