如何将数据网格存储到数据表中?

时间:2014-01-24 08:08:30

标签: c# datagridview datatable

我需要将datagridview所选行存储到单个列中的数据表中,如下所示

的DataGridView

user1 user2 user3
ram   sam   ravi

数据表

values
ram
sam
ravi

我试过下面的代码

DataTable dt = new DataTable();
dt.Columns.Add("values",typeof(string));

foreach (DataGridViewRow gridRow in dataGridView_settings.Rows)
{
      DataRow dtRow = dt.NewRow();

      for (int i = 0; i < dataGridView_settings.Columns.Count; i++)
      {
          dtRow[0] = gridRow.Cells[i].Value;
          dt.Rows.Add(dtRow);
      }
}

问题是它在数据表中只添加了一行,然后显示错误“此行已经属于此表。”

1 个答案:

答案 0 :(得分:0)

您应该将DataRow创建移动到

的内部
DataTable dt = new DataTable();
dt.Columns.Add("values",typeof(string));
foreach (DataGridViewRow gridRow in dataGridView_settings.Rows)
{
      for (int i = 0; i < dataGridView_settings.Columns.Count; i++)
      {
          DataRow dtRow = dt.NewRow();
          dtRow[0] = gridRow.Cells[i].Value;
          dt.Rows.Add(dtRow);
      }
}