Заполнение DataGridView из DataTable - C#
Формулировка задачи:
Здравствуйте уважаемые эксперты! Есть следующий код:
И вызываю я его так:Но при вызове, данные в DVG переписываются. Как сделать чтобы строка не переписывалась, а добавлялись новые строки в DVG при каждой итерации цикла?
static class FillDataGridView { private static DataTable AddInformation(string str) { DataTable _table = new DataTable("Table"); string[] _colNames = new[] { "Column 1", "Column 2", "Column 3" }; foreach (string colname in _colNames) { DataColumn column = new DataColumn(colname); column.DataType = Type.GetType("System.String"); _table.Columns.Add(column); } DataRow dataRow; dataRow = _table.NewRow(); dataRow[_colNames[0]] = "str1"; dataRow[_colNames[1]] = "str2"; dataRow[_colNames[2]] = str; _table.Rows.Add(dataRow); return _table; } public static void FillDataGrid(DataGridView dataGrid, string str) { DataTable table = AddInformation(str); dataGrid.DataSource = table; } }
private void Form1_Load(object sender, EventArgs e) { List<string> testList = new List<string>(); testList.Add("str1"); testList.Add("str2"); testList.Add("str3"); foreach (string str in testList) { FillDataGridView.FillDataGrid(dataGridView1, str); } }
Решение задачи: «Заполнение DataGridView из DataTable»
textual
Листинг программы
internal static class FillDataGridView { private static DataTable _table; private static DataTable AddInformation(string str) { var _colNames = new[] {"Column 1", "Column 2", "Column 3"}; if (_table == null) CreateTable(_colNames); DataRow dataRow; dataRow = _table.NewRow(); dataRow[_colNames[0]] = "str1"; dataRow[_colNames[1]] = "str2"; dataRow[_colNames[2]] = str; _table.Rows.Add(dataRow); return _table; } private static void CreateTable(IEnumerable<string> _colNames) { _table = new DataTable("Table"); foreach (string colname in _colNames) { var column = new DataColumn(colname); column.DataType = Type.GetType("System.String"); _table.Columns.Add(column); } } public static void FillDataGrid(DataGridView dataGrid, string str) { DataTable table = AddInformation(str); dataGrid.DataSource = table; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д