我有一个DataGridView与我从SQL Server
提取的数据。 我永远不知道我会有多少记录,所以我需要网格对提取的行数是可变的。DataGridView变量格式化
例:
- 图片1:我有什么权利了。 1行被提取,所以我有一个很大的深灰色空间,其中可能是数据。
- 图2:我想要的只有一行提取。网格根据行数自动调整大小。
- 图片3:我想多行有什么。
此外,我想删除总是添加的空行,添加一个新行不会是一个选项。
这可能吗?
我有一个DataGridView与我从SQL Server
提取的数据。 我永远不知道我会有多少记录,所以我需要网格对提取的行数是可变的。DataGridView变量格式化
例:
此外,我想删除总是添加的空行,添加一个新行不会是一个选项。
这可能吗?
您正在寻找DataSet.Datatable.Rows.Count
这会告诉你,总行从SQL Server返回
更新这不能使用DataGridView控件的任何属性来实现
当我得到它们时,我的行数是多少?我怎么知道,如果我有6行显示我只有6行而不是6行+一个大的灰色空间?在此先感谢 – phadaphunk 2012-07-23 16:23:04
@PhaDaPhunk看起来像这个问题已被问及之前,他们是在控制本身没有解决方案,请看看这篇文章http://stackoverflow.com/questions/2162756/datagridview-remove-unused-space – HatSoft 2012-07-23 16:53:45
谢谢很多我会停止寻找一种方法来做到这一点。 – phadaphunk 2012-07-23 16:56:32
您需要设置AutoSizeColumns
属性:
datagridview.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
datagridview.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells);
假设你从DataSet
填充网格,您可以使用该功能防止è被添加MPTY行:
foreach (DataRow row in dataset.Tables[0].Rows)
{
if (!string.IsNullOrWhiteSpace(row[0].ToString()))
{
//add row
}
}
我正在使用DataTable作为数据源。我改变了两个Porperties,但我仍然得到了很大的灰色空间...... – phadaphunk 2012-07-23 16:22:00
你在哪里放置代码来设置这些属性?你会在网格的底部得到一个灰色区域,直到你的查询返回足够的结果来填充它。否则,你可以调整它的高度? – dtsg 2012-07-23 16:24:48
是的,我知道这就是为什么我问这个问题。有没有办法不等待足够的行,并使高度变量代替.. 我没有编码它我改变了设计器属性面板中的那些属性 – phadaphunk 2012-07-23 16:29:10
@Nathan如果你把阅读完整的问题,而不仅仅是最后,你会看到,这是不一样的question..at所有 – phadaphunk 2012-07-23 16:14:51
我道歉的时间。 .. – Nathan 2012-07-23 16:16:56
@Nathan Np只是指出,所以我可以得到我正在寻找的答案, – phadaphunk 2012-07-23 16:17:34