CSDN-CSDN社区-.NET技术-C#

收藏 DataGridView垂直滚动条[问题点数:50,结帖人:envenlope]

  • envenlope
  • (jjp)
  • 等 级:
  • 结帖率:
楼主发表于:2009-01-10 03:27:06
DataGridView邦定数据原,然后往数据库加行,再次邦定,垂直滚动条没有了
使用了refresh()和ScrollBars属性也设置为Both 都不好用。、
但是当我用鼠标托拽DataGridView里面行的时候,使DataGridView的行发生变化垂直滚动条就会出来了。

如何让垂直滚动条出现呢?
回复次数:20
#1楼 得分:5回复于:2009-01-10 07:58:47
你将DataGridView的AutoSizeRowsMode属性设置成AllCells
应该就可以了
#2楼 得分:0回复于:2009-01-10 09:42:45
你将DataGridView的ScrollBars属性设置成Both或Vertical
#3楼 得分:20回复于:2009-01-10 10:21:26
#4楼 得分:0回复于:2009-01-10 10:26:50
引用 1 楼 xianshuang 的回复:
你将DataGridView的AutoSizeRowsMode属性设置成AllCells
应该就可以了


再把DataGridView的ScrollBars属性设置成Both
#5楼 得分:0回复于:2009-01-10 10:53:40
3楼的方法似乎太复杂了,一楼结合二楼的就是答案
#6楼 得分:0回复于:2009-01-11 22:51:40
引用 1 楼 xianshuang 的回复:
你将DataGridView的AutoSizeRowsMode属性设置成AllCells
应该就可以了

这个方法等我试试
#7楼 得分:0回复于:2009-01-11 22:52:48
引用 2 楼 sms666333 的回复:
你将DataGridView的ScrollBars属性设置成Both或Vertical

这个方法我试过了,当数据重新绑定后不好用,滚动条还是没有显示
#8楼 得分:0回复于:2009-01-11 22:58:49
引用 3 楼 sunny906 的回复:
refresh()是刷新控件
在数据记录较多的情况下,这种情况应属正常

public void binding()  //数据绑定函数
{
string sql="select * from 表名";
sqlconnection con=new sqlconnection("...");
sqldataapter sda=new sqldataapter(sql,con);
dataset ds=new dataset();
sda.fill(ds);
datagridview1.datasource=ds.tables[0];
}

窗体的Show事件:
this.binding();  //窗体打开时显示数据

向数据库…

你的方法和我现在用的应该是一样的。
我现在的做法就是第一次绑定后,如果需要就进行重新绑定。
但是重新绑定前没有解除绑定,是这个原因吗?
  • wangping_li用户头像
  • wangping_li
  • (总有一天,我星球上的人会来接我)
  • 等 级:
#9楼 得分:0回复于:2009-01-12 00:10:24
不懂什么意思,不是数据超过dataGridView高度时滚动条自动出现的吗?
#10楼 得分:0回复于:2009-01-12 09:32:55
引用 9 楼 wangping_li 的回复:
不懂什么意思,不是数据超过dataGridView高度时滚动条自动出现的吗?

  同意!
#11楼 得分:5回复于:2009-01-12 09:52:16
你将DataGridView的AutoSizeRowsMode属性设置成AllCells
应该就可以了
再把DataGridView的ScrollBars属性设置成Both
写在Page_Load()里
#12楼 得分:0回复于:2009-01-12 10:14:08
引用 11 楼 gsnake2 的回复:
你将DataGridView的AutoSizeRowsMode属性设置成AllCells
应该就可以了
再把DataGridView的ScrollBars属性设置成Both
写在Page_Load()里

不行,你的方法刚试过不好用
这个方法也不能用现在要写不能改变DataGridView内的大小
#13楼 得分:0回复于:2009-01-12 10:15:11
引用 9 楼 wangping_li 的回复:
不懂什么意思,不是数据超过dataGridView高度时滚动条自动出现的吗?

这是微软的一个bug,当你再次赴大量的数据给DataGridView的时候滚动条就会消失
#14楼 得分:0回复于:2009-01-12 12:21:42
大家帮忙解决一下
  • wangping_li用户头像
  • wangping_li
  • (总有一天,我星球上的人会来接我)
  • 等 级:
#15楼 得分:0回复于:2009-01-12 12:27:26
引用 13 楼 envenlope 的回复:
引用 9 楼 wangping_li 的回复:
不懂什么意思,不是数据超过dataGridView高度时滚动条自动出现的吗?

这是微软的一个bug,当你再次赴大量的数据给DataGridView的时候滚动条就会消失


????????,我怎么没出现过?
#16楼 得分:0回复于:2009-01-12 13:04:45
不知道呀
我是一开始绑定的数据源,数据修改后再次绑定的时候就会出现这种问题
#17楼 得分:0回复于:2009-01-12 14:24:31
我刚才在论坛里搜索了一下发现有人也遇到过这个问题,但是都没有解决方案
#18楼 得分:20回复于:2009-01-12 15:57:05
#19楼 得分:0回复于:2009-01-12 15:58:05
  dataGridView13.ColumnHeadersDefaultCellStyle.WrapMode = DataGridViewTriState.False;
                dataGridView13.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
#20楼 得分:0回复于:2009-01-12 15:58:49
在代码绑定的地方添加上面的语句
相关问题
请问如何让DataGridView一直显示垂直滚动条
C# datagridview 垂直滚动条问题
datagrid垂直滚动条与添加记录问题VB / 基础类- CSDN社区community ...
有关DataGrid的垂直滚动条VB / 数据库(包含打印,安装,报表) - CSDN ...
datagrid 的垂直滚动条没有作用VB / 基础类- CSDN社区community.csdn.net
DataGridView 底部添加合计行后,怎样才能使垂直滚动条滚动到最后时 ...