将控件DataGridview中的数据 转化为DataTable格式的
参考其他人的代码实现了这个功能。
public DataTable DataGridViewToTable(DataGridView dgv)
{
System.Data.DataTable dt = new System.Data.DataTable();
// 循环列标题名称,处理了隐藏的行不显示
for (int count = 0; count < dgv.Columns.Count; count++)
{
if (dgv.Columns[count].Visible == true)
{
dt.Columns.Add(dgv.Columns[count].HeaderText.ToString());
}
}
// 循环行,处理了隐藏的行不显示
for (int count = 0; count < dgv.Rows.Count; count++)
{
DataRow dr = dt.NewRow();
int curr = 0;
for (int countsub = 0; countsub < dgv.Columns.Count; countsub++)
{
if (dgv.Columns[countsub].Visible == true)
{
if (dgv.Rows[count].Cells[countsub].Value != null)
{
dr[curr] = dgv.Rows[count].Cells[countsub].Value.ToString();
}
else
{
dr[curr] = "";
}
curr++;
}
}
dt.Rows.Add(dr);
}
return dt;
}
该引用的引用一下就可以啦,调用这个类就可以了。
在网上找的资料都差不多,但是如果 DataGridview中含有隐藏的列,也将会转化为DataTable,所以我增加了隐藏列的处理