8

DataGridView (Form) 包含足够的行以显示垂直滚动条。但它没有启用。移动的 Silder 丢失,Button Up 和 Button Down 显示为灰色。

=> 有一个垂直滚动条但未启用。

我试过:

  1. 填充 DataGridView 后,控件将更新。
  2. 调整整个面板的大小。
  3. 冻结属性为假。
  4. 我在一个单元格中单击我可以使用向上和向下键滚动,但滚动条将不会启用。

如果我在运行时调整控件的大小(DataGridView 在拆分面板上),则可以使用滚动条,例如它现在已启用。

4

5 回答 5

7

试试这个:

1.您的列之一可能已冻结属性设置为True

这应该False适用于所有列。

2. 设置问题列的AutoSizeMode为AllCells

3. mygrid.DockStyle = DockStyle.Fill

于 2012-05-31T12:01:57.320 回答
1

设置 datagridview 的 ScrollBar 属性为 Both。

于 2012-05-31T12:07:51.600 回答
1

可以在此处找到相同的问题以及一些解决方法: DataGridView 垂直滚动条未正确更新(表单错误?)
这似乎是一个出现的 winforms 错误,例如,当 DGV 放置在选项卡控件的选项卡内时。

于 2014-02-03T14:13:00.917 回答
1
  1. 你应该停靠填充你的datagridview到面板
  2. 如果您有一些冻结的行,请确保在完成将数据导入 gridview 后设置这些行

如果您之前设置了冻结行,则添加的行将采用第一行的默认样式,并且您的所有 gridview 行都将具有选项row.frozen = true。这就是垂直滚动不会出现的原因。

于 2016-06-17T02:29:05.943 回答
0

水平滚动条也有类似的问题。在网格上做PerformLayout并没有解决它。事实证明,我的问题是表单被禁用。我们有一个基础设施,它在加载时禁用表单,异步加载一堆东西,最后启用表单。出于某种原因,这足以让滚动条在启用表单时保持禁用状态(就像在您的场景中在启用滚动条时调整表单大小一样)。所以对我来说,解决方案是在启用表单PerformLayout调用网格。

于 2015-12-16T22:28:09.650 回答