С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/19: Рейтинг темы: голосов - 19, средняя оценка - 4.95
28 / 28 / 11
Регистрация: 08.08.2011
Сообщений: 1,173

DataGridView - как удалить ряды, содержащие определенную строку

30.03.2012, 10:58. Показов 4029. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть dataGridView с 3 столбцами и 1000 рядов.

Как удалить все ряды, у которых во втором столбце значение == "Петров" ?

Добавлено через 8 минут
Как это сделать через foreach ряд where (условие)?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.03.2012, 10:58
Ответы с готовыми решениями:

Файлы, как удалить определенную строку?
Как читать с файла 10 строчку(всю строчку в переменую) и удалить 11 строчку и все другие строчки сместить на одну позицию вверх? Как...

Необходимо в текстовом файле найти определенную строку, в которой имеется спец.символ и удалить строку
К примеру в файле есть записи: Привет Привет Хороший День Мне нужно, что бы запись с символом "Hi" была удалена, или с...

как удалить строку из datagridview
как удалить строку из datagridview? у меня считывается из текстового файла инфа которой я заполняю таблицу datagridview, мне надо чтобы...

4
35 / 35 / 1
Регистрация: 14.01.2011
Сообщений: 111
30.03.2012, 11:26
C#
1
2
3
4
5
6
7
 for (int i = dataGridView1.Rows.Count-1; i >=0; i--)
{
  if (dataGridView1[1, i].Value != "петров")
  {
    dataGridView1.Rows.Remove(dataGridView1.Rows[i]);
  }
}
но так работает только если запрещено пользователю добавлять строки, иначе при удалении последней строки вывалится ошибка
если хочешь оставить пользователю возможность добавлять строки, то тебе нужно создать массив строк, пройтись циклом по гриду и добавить в массив строки которые хочешь оставить.
Потом очисти весь грид и добавить в него массив сохраненных строк
1
28 / 28 / 11
Регистрация: 08.08.2011
Сообщений: 1,173
30.03.2012, 11:47  [ТС]
Спасибо! Пришел к тому же решению. Я сначала пробовал перебирать от первой строки к последней, но заметил, что тогда не все строки удаляются (индекс ведь смещается). Поэтому нужно перебирать с конца.

Добавлено через 1 минуту
А может ли кто-нибудь написать решение с помощью Linq?
Очень интересно попробовать.
0
35 / 35 / 1
Регистрация: 14.01.2011
Сообщений: 111
31.03.2012, 04:36
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
            DataTable dt = new DataTable("data");
            DataColumn[] c = new DataColumn[] { new DataColumn("c1",typeof(string)), new DataColumn("c2", typeof(string)), new DataColumn("c3", typeof(int))};
            dt.Columns.AddRange(c);
            int rowCount = 20;
            //заполняем данными четный сидоров нечетный петров
            for (int i = 0; i < rowCount; i++)
            {
                dt.Rows.Add(new object[] { "c" + i.ToString(), i % 2 != 0 ? "Petrov" : "Sidorov", i });
            }
            //linq запрос из таблици
            var query = from d in dt.AsEnumerable() where d.Field<string>("c2") == "Petrov" select d;
            //переносим данные в новую таблицу
            DataTable dt_ = query.CopyToDataTable();
            //отображаем в гриде
            dataGridView1.DataSource = dt_;
1
28 / 28 / 11
Регистрация: 08.08.2011
Сообщений: 1,173
31.03.2012, 21:22  [ТС]
Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.03.2012, 21:22
Помогаю со студенческими работами здесь

DataGridView как удалить строку вручную?
Добрый день. Недавно в C#. Подскажите, пожалуйста, чего-то не могу сообразить. Есть на форме DataGridView, AllowUserToDeleteRows ==...

Как окрасить ряды datagridview через 2
Добрый день! Нужно окрасить ряды datagridview 2 по 2. То есть, сначала идут два белых ряда, потом 2 серых. Потом опять 2 белых. ...

Как скрыть определенную ячейку в DataGridView
Господа, неполучается догадаться как сделать невидимую ячайку в гриде. Подскажите пожалуйста. Вот так создаю грид. ...

Удалить строку из datagridview
а как удалить выделенную строку при нажатии кнопки button?

Удалить строку из datagridview
чо то не шарю почему не получаеться мне нужно удалит текушую строку из датагридвиева.. DataGridViewRowCollection temp = new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru