Статья Как удалить строку в DataGridView в языке С#
Из этой статьи Вы узнаете, как удалить строку в DataGridView.
И так предположим, что у нас есть DataGridView (dgv), который содержит 4 строки (записи).
Давайте рассмотрим и разберем на простых примерах несколько самых распространённых задач связанных с удалением строк.
Удаление строки в DataGridView по индексу
В качестве первой задачи рассмотрим пример, в котором необходимо удалить строку в DataGridView по указанному в текстовом поле индексу.
Решить данную задачу можно несколькими способами, например, мы можем воспользоваться методом RemoveAt, который в качестве единственного параметра принимает индекс удаляемой строки. Не забывайте, что индекс первой строки всегда равен нулю!
И так давайте, например, удалим строку с индексом два.
dgv.Rows.RemoveAt(int.Parse(textBox1.Text));
результат
Удаление строки в DataGridView по значению
Во второй задаче нам потребуется удалить в DataGridView строку, которая содержит указанное в текстовом поле значение.
Например, рассмотрим простую задачу, в котором пользователь хочет удалить строку, в которой колонка lastname содержит значение (фамилию) Petrov.
foreach (DataGridViewRow row in dgv.Rows) < if (row.Cells["lastname"].Value.Equals(textBox1.Text)) < dgv.Rows.RemoveAt(row.Index); break; >>
Сначала, перебирая все строки, мы находим указанное пользователем значение, а затем, с помощью метода RemoveAt, уже знакомого нам по предыдущему примеру, удаляем полученную строку в DataGridView. При этом чтобы получить индекс текущей строки, мы используем свойство Index.
Так же не забывайте указывать оператор break, так как цикл, не смотря на то, что строка уже будет найдена и удалена, всё равно будет
продолжен!
Удаление выделенной строки в DataGridView
И последняя задача, в которой нам необходимо удалить выделенную строку в DataGridView.
При решении данной задачи есть два важных момента, на которые стоит обратить внимание. Во-первых, по умолчанию выделение всей строки в DataGridView происходит только при нажатии на самый первый (левый) столбец.
Если мы точно знаем, что пользователь будет использовать такой способ выделения строк, то мы можем удалить выделенную строку в DataGridView, например, воспользовавшись свойством SelectedRows.
В предыдущих примерах для удаления строк мы использовали метод RemoveAt, в этом примере рассмотрим метод Remove, который так же позволяет удалить любую строку в DataGridView, но при этом нам не нужно указывать индекс, а достаточно просто в качестве параметра передать текущую строку.
foreach (DataGridViewRow row in dgv.SelectedRows)
Но, многие пользователи не знают о выше приведенном способе и часто выделяют строку, просто нажимая на любую ячейку.
В таком случае выше приведенное решение не подходит, так как нам теперь нужно отловить не выделенную строку, а выделенную ячейку. Это мы можем сделать, например следующим образом:
foreach (DataGridViewCell cell in dgv.SelectedCells)
В результате у нас получается два метода для решения одной задачи.
На самом деле есть более удобное решение, которое позволяет решить сразу обе задачи. В DataGridView существует свойство CurrentRow, которое позволяет автоматически определить текущую строку, при чём не важно выделил строку пользователь, нажав на ячейку или на самый левый столбец.
Например, воспользуемся данным свойством и удалим, к примеру, выделенную третью строку.
if (dgv.CurrentRow != null)
На этом всё, если есть какие-то вопросы, то оставляйте их в комментариях.
Удалить строку из datagridview
как удалить строку из datagridview
как удалить строку из datagridview? у меня считывается из текстового файла инфа которой я заполняю.
Удалить и добавить строку в dataGridView, если есть привязка к данным
Нужно удалить или добавить строку в dataGridView. Добавляю так.
Удалить выбранную строку в datagridview из бд
в datagridview выведена таблица из базы данных с помощью bindingsource. Как сделать удаление через.
Как удалить выбранную строку из datagridview и бд
Помогите разобраться с кодом private void buttondelete_Click(object sender, EventArgs e) .
687 / 601 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
Сообщение было отмечено как решение
Решение
dataGridView.Rows.RemoveAt(int index) //по индексу строки удаляем dataGridView.Rows.Remove(DataGridViewRow row) //удаляем по известной строке
Мохаммед Али
131 / 70 / 5
Регистрация: 14.08.2009
Сообщений: 916
чо то я совсем)
Регистрация: 16.12.2011
Сообщений: 14
Сообщение было отмечено как решение
Решение
int ind = dataGridView1.SelectedCells[0].RowIndex; dataGridView1.Rows.RemoveAt(ind);
Регистрация: 27.02.2018
Сообщений: 8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
private void button2_Click(object sender, EventArgs e) { try { int Nomer = int.Parse(this.textBox5.Text); string connectionString = @"Data Source=сервер_или_твой_комп\sqlexpress;Initial Catalog=DataBase;Integrated Security=True"; SqlConnection conn = new SqlConnection(connectionString); conn.Open(); SqlCommand myCommand = conn.CreateCommand(); myCommand.CommandText = "DELETE FROM Поставщики WHERE Номер_поставщика = @Nomer"; myCommand.Parameters.Add("@Nomer", SqlDbType.Int); myCommand.Parameters["@Nomer"].Value = Nomer; int UspeshnoeIzmenenie = myCommand.ExecuteNonQuery(); if (UspeshnoeIzmenenie !=0) { MessageBox.Show("Изменения внесены", "Изменение записи"); } else { MessageBox.Show("Не удалось внести изменения", "Изменение записи"); } } catch(Exception ex) { MessageBox.Show(ex.ToString()); } }
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Удалить строку в DataGridView и в базе данных
Привет! Как удалить текущую строку в таблице SQL? Код выглядит так.
Удалить строку, выбранную пользователем в объекте DataGridView
Не могу удалить строку выбранную пользователем в объекте DataGridView:( Помогите плиз найти ошибку.
Как удалить строку из БД Access через DataGridView?
Добрый день! Подскажите как реализовать удаление строки из бд через datagridview. из самой.
Нажав на значение (строку) из одного DataGridView поиск в другом DataGridView
Всем привет. Есть 2 DataGridView в одном только дата, а во втором дата и много других столбиков.
Как удалить строку из DataGridView, что бы после рефреша строка с таким ID больше не появлялась в списке?
Уточните вопрос. Напишите, как данные попадают в DataGridView. Они берутся из БД? Сделана привязка (binding)?
14 ноя 2015 в 18:08
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
если удалить все то так:
dataGridView1.Rows.Clear(); dataGridView1.Refresh();
если конкретную строчку то надо знать ее индекс
dataGridView1.Rows.RemoveAt(индекс строки); dataGridView1.Refresh();
можно удалить и имея объект row
dataGridView1.Rows.Remove(row); dataGridView1.Refresh();
Отслеживать
ответ дан 13 ноя 2015 в 11:02
2,508 2 2 золотых знака 12 12 серебряных знаков 25 25 бронзовых знаков
после такого удаления когда снова запускаю программу удаленная строка снова появляется,нужно что бы не появился
13 ноя 2015 в 16:37
дополнительно вам надо ее еще и из базы удалить. Необходимо знать уникальный идентификатор записи в базе (обычно Id), выполнить запрос на удаление
13 ноя 2015 в 16:39
datagridview.databind();
вставляешь в любой серверный обработчик
Отслеживать
51.2k 86 86 золотых знаков 266 266 серебряных знаков 505 505 бронзовых знаков
ответ дан 13 ноя 2015 в 11:50
one__for__one one__for__one
13 3 3 бронзовых знака
а по конкретнее?
13 ноя 2015 в 16:38
Постарайтесь писать более развернутые ответы. Поясните, на чем основано ваше утверждение?
14 ноя 2015 в 7:34
for (int i = 0; i < arr.Length; i++) < for (int j = 0; j < arr.Length; j = j++) < dataGridView2.Rows[i].Cells[j].Value = null; >>
Отслеживать
ответ дан 7 мая в 0:29
Алберт Скоростяк Алберт Скоростяк
1 1 1 бронзовый знак
- c#
- winforms
- datagridview
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Удаление строки из DataGridView
Как запретить удаление строки в DataGridView, если пользователь не выбрал ни одной строки?
Здравствуйте! У меня есть datagridview и кнопка удаления записи на форме. Данные в datagridview.
DataGridView — удаление строки
Visual Studio по дефолту создает строку пустую, можно ли ее отключить? Чтобы ее не было?
Удаление Строки из DataGridView
Проблема заключается в следующем я написал код но он почему-то удаляет только первую строку при.
Удаление последней строки из DataGridView
Столкнулся с такой проблемой: После удаления последней существующей строки или всех строк сразу.
Регистрация: 22.09.2015
Сообщений: 17
DataGridView.Rows.RemoveAt(row.Index);
Регистрация: 12.05.2017
Сообщений: 91
Добавлено через 1 минуту
я нашел код он удаляет из дата грид но из базы не удаляет
int delet = dataGridView1.SelectedCells[0].RowIndex; dataGridView1.Rows.RemoveAt(delet);
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Удаление последней строки в datagridview
Добрый день! В datagridview осуществляю ручнйо ввод с клавиатуры, при этом автоматически создается.
Удаление выделенной строки в datagridview
Всем привет. Подскажите, какой нужно написать код на кнопку. зы событие mouseDown для сетки не.
Удаление выделенной строки из DataGridView
У меня есть 3 таблицы, хочу чтобы по нажатию одной кнопки, можно было в любой из них удалить.
Удаление строки в Datagridview C# и SQL Server
У меня есть база данных, созданная в SQL. После создания БД я подключил её к C# Visual Studio и.
Удаление выделенной строки из DataGridView и коллекции
Здравствуйте! Пытаюсь удалять строки из DataGridView и коллекции по нажатию кнопке — первая.
Как реализовать удаление строки в DataGridView?
как мне сделать возможность удаления строк? единственное что смог придумать это сделать кнопку.