我一直在尝试将GRIDVIEW转换为DataTable,但它没有给我数据,它只给了我GridView的HEADERS而不是它里面的数据。为什么?我在gridview中使用模板字段
从事件中调用它:
DataTable dt = GetDataTable(GridView DenominationsWiseTransactions);
转换功能:
DataTable GetDataTable(GridView dtg)
{
DataTable dt = new DataTable();
// add the columns to the datatable
if (dtg.HeaderRow != null)
{
for (int i = 0; i < dtg.HeaderRow.Cells.Count; i++)
{
dt.Columns.Add(dtg.HeaderRow.Cells[i].Text);
}
}
// add each of the data rows to the table
foreach (GridViewRow row in dtg.Rows)
{
DataRow dr;
dr = dt.NewRow();
for (int i = 0; i < row.Cells.Count; i++)
{
dr[i] = row.Cells[i].Text.Replace(" ", "");
}
dt.Rows.Add(dr);
}
return dt;
}
答案 0 :(得分:0)
因此,当您循环遍历数据网格中的行时,它将包含标题,行和页脚。
要查看您需要执行以下操作的数据行:
if (e.Row.RowType == DataControlRowType.DataRow)
{ //convert that row }
您的转换行可能需要一些工作,但至少您现在只需要关注数据行。