#vb.net #datatable #formatting
Вопрос:
Я знаю и использовал форматирование столбцов для таблицы данных(«dt») при добавлении столбцов, например, например:
dt.Columns.Add("myColName", GetType(Double))
или
DataColumn column;
column = New DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.ColumnName = "MyColName";
dt.Columns.Add(column);
Тем не менее, я добавляю данные из двойного массива x(i, j) в dt, но добавляю по строкам. Как бы я указал GetType(Double)
, чтобы столбцы были двойными?
Dim workrow As DataRow
For i = 0 To MyRows - 1
workrow = dt.NewRow()
For j = 0 To MyCols - 1
workrow(j) = x(i, j)
Next
dt.Rows.Add(workrow)
Next
Комментарии:
1. Когда вы определяете столбец (используя любой из двух ваших методов), это способ задать тип данных столбца. Все, что вам нужно сделать после этого, это убедиться, что значения имеют правильный тип. Способ добавления потоков данных в третий блок кода не требует указания типа данных столбца
2. Если вы столкнулись с проблемой, возможно, переформулируйте свой вопрос, чтобы включить проблему, с которой вы столкнулись
3. Оказалось, что вы можете форматировать столбцы перед добавлением данных, так что я это сделал (так как я знал, что все столбцы должны быть двойными).
4. Каков тип данных x. Если x-двойной, то проблем быть не должно.
Ответ №1:
Это было решено путем указания форматов столбцов до добавления данных в dt.
For j = 0 To dt.Columns.Count - 1
dt.Columns(j).DataType = System.Type.GetType("System.Double")
Next
Хотя массив был двойным, и проблем не возникло бы, тем не менее, это способ форматирования столбцов, когда данные добавляются в dt строками (не столбцами).