DataGridview Все данные столбца в один столбец - PullRequest
0 голосов
/ 21 мая 2019

У меня есть одно представление данных, есть 5 столбцов. Я хочу, чтобы 5 столбцов данных в одном столбце.Пример: -

Datatable1      Datatable2

A   B   C   D   New Coln 
10  11  21  31  10
11  12  22  32  11
12  13  23  33  12
13  14  24  34  13
14  15  25  35  14
                11
                12
                13
                14
                15
                21
                22
                23
                24
                25
                31
                32
                33
                34
                35

Ответы [ 2 ]

0 голосов
/ 21 мая 2019

Если вам нужно выполнить эту операцию с использованием источника DataTable (не SQL), вы можете использовать LINQ для извлечения значений строк по столбцу:

Именование dt1 исходная таблица данных и dt2 целевая таблица данных:

var dt2 = new DataTable("DataTable2");
dt2.Columns.Add(new DataColumn("Col1") { DataType = typeof(int) });

dt1.Columns.OfType<DataColumn>().SelectMany((col, idx) =>
    dt1.Rows.OfType<DataRow>().Select(row => dt2.Rows.Add(row.ItemArray[idx]))).ToList();
0 голосов
/ 21 мая 2019

Простой цикл решит эту проблему.см. вывод следующего

DataTable table = new DataTable();
table.Columns.Add("col1", typeof(int));
table.Columns.Add("col2", typeof(int));
table.Columns.Add("col3", typeof(int));
table.Columns.Add("col4", typeof(int));

table.Rows.Add(25 ,10,2,10);
table.Rows.Add(22, 11, 12, 14);
table.Rows.Add(13, 22, 3, 55);
table.Rows.Add(3, 4, 12, 5);

DataTable table2 = new DataTable();
table2.Columns.Add("col1", typeof(int));

foreach (DataRow row in table.Rows)
{
  foreach (DataColumn col in table.Columns)
  {
    table2.Rows.Add(int.Parse((row[col].ToString())));
  }
}

Результат

25
10
2
10
22
11
12
14
13
22
3
55
3
4
12
5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...