不绑定DataSet.Tables,而是一行一行的读取DataSet中的数据并填充到DataGridView中

本文介绍如何使用C#在不绑定数据源的情况下,通过遍历DataSet中的DataRow来填充DataGridView控件的方法。此外还介绍了如何在每次刷新DataGridView前清除其原有数据。

在Windows窗体控件中,我们大多用DataGridView来显示数据,显示时一般是从数据源端获取到DataSet后,将其Tabels与DataGridView绑定。但有时我们需要在一个线程中进行数据读取和显示操作,这时DataGridView没有绑定数据源,而是逐行读取DataSet的Table中的DataRow,并将这些DataRow一一填充到DataGridView中去。

由于DataGridView没有绑定数据源,因此我们在填充DataRow之前需要定义一下Columns。

for (int m = 0; m < dataSet.Tables[0].Columns.Count; m++) { myDataGridView.Columns.Add(dataSet.Tables[0].Columns[m].ToString(), dataSet.Tables[0].Columns[m].ToString()); }

设置好DataGridView的列之后,我们就可以向DataGridView中逐行填充数据了。

foreach (DataRow dataRow in dataSet.Tables[0].Rows) { myDataGridView.Rows.Add(); //DataGridView在录入数据之前,需要首先增加自己的行的数量 int i = myDataGridView.Rows.Count; //获取DataGridView当前行数 object[] itemArray = dataRow.ItemArray; //获取dataRow的所有的单元格里的数据Array //将dataRow的单元格数组数据一一填充到DataGridViewRow的Cell中 for (int j = 0; j < itemArray.Length; j++) { myDataGridView.Rows[i - 1].Cells[j].Value = itemArray[j].ToString(); } }

如果我们需要多次刷新并显示该DataGridView,那么在每一次获取和显示数据之前,我们需要把这个DataGridView里的数据清空。首先清空每一行的数据,然后才能清空列。代码如下所示。

myDataGridView.Rows.Clear(); myDataGridView.Columns.Clear(); myDataGridView.Refresh();

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值