c#datagridview 如何不覆盖原有数据添加新数据 并空一行 30
data是我传回来的第一个60条数据,我把它放入dataGridView1里,然后继续循环那些文件,取出第二次data里的20条数据,再次放入dataGridView1里...
data是我传回来的第一个60条数据,我把它放入dataGridView1里 ,然后继续循环那些文件,取出第二次data里的20条数据,再次放入dataGridView1里,但是现在第二次就覆盖第一次的了,最后dataGridView1里只是最后一次的数据,应该是每次data的数据都放入dataGridView1里,用空行隔开。求大神指导,谢谢
展开
3个回答
展开全部
你是循环的给datasource赋值当然每次都是最后一次的数据,你要用叠加的方式给datagridview添加新的数据,你这个data应该是dataTable类型的,定义一个全局的datatable,每次读到新数据就添加到这个datatable中,并且添加一个空行,
DataTable DT = new DataTable();
DataRow DR = DT.NewRow();
DT.Rows.InsertAt(DR,RowIndex);
//这个是添加空行
然后再将dataTable给datagridview
展开全部
循环的外边定义一个dataset
比如:
dataset ds = new dataset();
for (i =0;i<61;i++)
{
DataTable dt = new DataTable();
dt = "你获取的数据源";
//插入空行
DataRow dr = dt.NewRow(); dt.Rows.Add(dr);
//判断第一次新增
if i=1
ds.Tables.Add(dt);
else
//除第一次之后
ds.Tables[0].Merge(dt);
}
this.datagridview.dataSource = ds.table[0].DefaultView;
循环外边绑定就OK了
大概就这个意思,你理解下
比如:
dataset ds = new dataset();
for (i =0;i<61;i++)
{
DataTable dt = new DataTable();
dt = "你获取的数据源";
//插入空行
DataRow dr = dt.NewRow(); dt.Rows.Add(dr);
//判断第一次新增
if i=1
ds.Tables.Add(dt);
else
//除第一次之后
ds.Tables[0].Merge(dt);
}
this.datagridview.dataSource = ds.table[0].DefaultView;
循环外边绑定就OK了
大概就这个意思,你理解下
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以试试合并两个dataset 或者datatable 但是空行得自己手动加,然后绑定girdview
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询