Пометка признака выбора строки DataGridView в источнике данных - Visual Basic .NET
Формулировка задачи:
Имеется DataTable - DT с колонками SEL и ULCODE.
Имеется Форма FRM с DataGridView - DGV_LPU с колонкой ULCODE.
Далее указано:
Необходимо в таблице DT заполнить поле SEL значением "S", если соответствующая строка ВЫБРАНА в DataGridView и "" в противном случае.
Просьба подсказать решение проблемы
Проблема решена, хотя связь DataGridView с источником данных (DataTable) в DOTNET оставляет желать лучшего.
Решение задачи: «Пометка признака выбора строки DataGridView в источнике данных»
textual
Листинг программы
DataTable dt = dataGridView1.DataSource as DataTable; //Или берем ту DataTable, которую сами указали DataGridViewRow row = dataGridView1.SelectedRows[0]; //Это в случае, если стоит свойство MultiSelect = false. //В противном случае все это нужно делать для каждой строки в выборке строк //Формируем запрос string query = "id = " + row.Cells["id"].Value.ToString(); //Делаем выборку из DataTable, //для этого берем 0-ю строку, т.к. id уникальное значение и строка будет единственная DataRow dRow = dt.Select(query)[0]; //Получаем id в DataTable той строки, которая выбрана в DataGridView int id = Convert.ToInt32(dRow["id"]); //Ну а так вариант "все в одной куче" int id_ = Convert.ToInt32((dataGridView1.DataSource as DataTable).Select("id = " + dataGridView1.SelectedRows[0].Cells["id"].Value.ToString())[0]["id"]);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д