DataTable Rows.Add() 属性 仅添加空行,即使在使用已填充的 DataRow 时也是如此
DataTable Rows.Add() property only adding empty rows even when using a populated DataRow
我有一个 DataGridView,我试图清空数据然后将数据放回其中,但无论我尝试用什么方法填充 dgv,我都只会得到空行。
我有这段代码,但无论我尝试什么,dt.Rows.Add(sortestStus[row])
总是会导致添加一个空行。
sortedStus = Split_List(stuRows);
DataTable dt = (DataTable)dgvClassStuInfo.DataSource;
dgvClassStuInfo.DataSource = dt;
dt.Clear();
for (int row = 0; row < sortedStus.Count; row++)
{
dt.Rows.Add(sortedStus[row]);
}
sortedStus
是由合并排序填充的 List<DataRow>
- 这按预期工作并且 sortedStus
填充了具有预期数据的行。 dt.Clear();
正在按预期工作并删除所有行,但导致问题的是 for 循环。
我试过 dt.NewRow();
并单独添加每个项目,但仍然无效,我还尝试刷新 dgv 和数据表,但也无效。有人有什么想法吗?
ETA:抱歉,如果这是一个重复的问题,但我似乎找不到任何与此问题相关的问题,只是尝试实际添加空行。
ETA2:尝试 dt.Rows.Clear();
作为匿名建议具有相同的行为
我想出了一个解决方案
我的问题实际上是 Simple way to convert datarow array to datatable
的重复
我需要将 dt
初始化为 DataTable
的新实例并使用 sortedStus.CopyToDataTable()
填充它,然后将 DataGridView
的数据源设置为 dt
.
现在结束问题。
我有一个 DataGridView,我试图清空数据然后将数据放回其中,但无论我尝试用什么方法填充 dgv,我都只会得到空行。
我有这段代码,但无论我尝试什么,dt.Rows.Add(sortestStus[row])
总是会导致添加一个空行。
sortedStus = Split_List(stuRows);
DataTable dt = (DataTable)dgvClassStuInfo.DataSource;
dgvClassStuInfo.DataSource = dt;
dt.Clear();
for (int row = 0; row < sortedStus.Count; row++)
{
dt.Rows.Add(sortedStus[row]);
}
sortedStus
是由合并排序填充的 List<DataRow>
- 这按预期工作并且 sortedStus
填充了具有预期数据的行。 dt.Clear();
正在按预期工作并删除所有行,但导致问题的是 for 循环。
我试过 dt.NewRow();
并单独添加每个项目,但仍然无效,我还尝试刷新 dgv 和数据表,但也无效。有人有什么想法吗?
ETA:抱歉,如果这是一个重复的问题,但我似乎找不到任何与此问题相关的问题,只是尝试实际添加空行。
ETA2:尝试 dt.Rows.Clear();
作为匿名建议具有相同的行为
我想出了一个解决方案
我的问题实际上是 Simple way to convert datarow array to datatable
的重复我需要将 dt
初始化为 DataTable
的新实例并使用 sortedStus.CopyToDataTable()
填充它,然后将 DataGridView
的数据源设置为 dt
.
现在结束问题。