【问题标题】:C# Adding dynamic column and rows in DatatableC#在Datatable中添加动态列和行
【发布时间】:2021-08-06 05:44:53
【问题描述】:

我尝试在循环中垂直向 DataTable 列添加值。

但输出看起来不像预期的那样好。

DataTables dynamictable = new DataTable()
foreach (DataColumn cl in dataTable.Columns)
{
   dynamictable.Columns.Add(cl.ToString());
   List<string> plainList = dataTable.AsEnumerable().Select(x => x[cl].ToString()).ToList();

   for (int i=0; i< plainList.Count(); i++)
   {
       DataRow row = dynamictable.NewRow();
       row[cl.ToString()] = plainList[i];   
       enryptedTable.Rows.Add(row);
   }
}

实际输出来自我的代码:

预期输出:

【问题讨论】:

标签: c#


【解决方案1】:

将您的代码更改为:

DataTable dynamictable = new DataTable();
int col = 0;
foreach (DataColumn cl in dataTable.Columns)
{
    dynamictable.Columns.Add(cl.ToString());
    List<string> plainList = dataTable.AsEnumerable().Select(x => x[cl].ToString()).ToList();
    DataRow row = null;
    for (int i = 0; i < plainList.Count(); i++)
    {
       row = dynamictable.NewRow();
       row[col] = plainList[i];
       dynamictable.Rows.Add(row);
    }
    col++;
}
//now set dynamictable to datagridview or .....

【讨论】:

    猜你喜欢
    • 2020-10-30
    • 2015-10-16
    • 2021-01-22
    • 1970-01-01
    • 2015-02-28
    • 2015-08-26
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    相关资源
    最近更新 更多