public DataTable ToDataTable(bool fillRows, ValueTableColumn[] columns)
{
DataTable dataTable = new DataTable();
for (int i = 0; i < columns.Length; i++)
{
var column = columns[i];
var tableColumn = column.ToDataColumn();
dataTable.Columns.Add(tableColumn);
}
if (fillRows)
{
int rowsCount = this.Count;
for (int i = 0; i < rowsCount; i++)
{
var v8Row = this[i];
DataRow dataRow = dataTable.NewRow();
for (int c = 0; c < columns.Length; c++ )
{
var column = columns[c];
dataRow[c] = v8Row[column.Index];
}
dataTable.Rows.Add(dataRow);
}
}
return dataTable;
}
}