繁体   English   中英

DataGridView仅显示直到窗口末尾的行

[英]DataGridView only shows rows up to the end of the window

因此,我有一个DataGridView,该程序在执行程序期间加载。 我通过以下代码设置网格的列:

for (int i = 0; i < vet.Length; i++)
            {
                dataGridView1.Columns.Add("column" + i, vet[i]);
                dataGridView1.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            }

我通过以下代码手动添加每一行:

for (int i = 0; i < atributtes.Count; i++)
            {
                vet = new string[atributtes[0].Count];
                for (int j = 0; j < vet.Length; j++)
                    vet[j] = atributtes[i][j].ToString();
                dataGridView1.Rows.Add(vet);
            }

我正在从文本文件中读取此vet数组。 滚动条是在表单属性中设置的,我已经仔细检查过。

这里的问题是该代码确实有效,它填充了网格,但仅填充到窗口中的终点。 在那之后要添加的行不会显示,并且滚动条也不会显示它们。 更准确地说,它精确地显示了一行经过该点的情况:

DataGridView不与我合作

加载循环每隔827个循环执行一次,每次到达Rows.Add()都会出现问题,但最终产品中仅显示约20行。 我的代码有什么问题?

您检查过atributtes.Count的价值了吗? 您的代码段似乎还可以。 我建议您检查您的数据。 我知道这应该是一个,但我无法发表评论,所以我发表了答案。

希望对您有所帮助。

编辑:

我想我发现您的代码出了什么问题。 您可以尝试删除此行吗

dataGridView1.Columns [i] .AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;

我认为您的自动调整大小模式中有一个功能,您可以滚动条。 希望对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM