Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 1
Регистрация: 27.09.2015
Сообщений: 121
1

Как запретить удаление строки в DataGridView, если пользователь не выбрал ни одной строки?

25.05.2018, 23:03. Показов 2529. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!

У меня есть datagridview и кнопка удаления записи на форме. Данные в datagridview попадают из таблицы базы данных (Entity Framework). При удалении записи, пользователь выбирает нужную строку в datagridview, нажимает кнопку удалить, выбирается индекс записи из ячейки datagridview и передается в метод, запись удаляется из базы данных. Проблема в том, что datagridview автоматически выделяет первую строку при загрузке формы, ClearCelection() не помогает убрать текущую строку. Подскажите пожалуйста, как проверить, что запись выбрана именно пользователем и кнопка удаления не срабатывала, когда не выбрана ни одна запись? В моем коде при попытке удаления без выбора записи, появляется ошибка в строке (выбранный индекс за пределами диапазона): int index = dataGridView1.SelectionRows[0].Index;

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
private void butDeleteCustomer_Click(object sender, EventArgs e)
{
      int index = dataGridView1.SelectionRows[0].Index;
      int id = 0;
      bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
 
      if (converted == false)
      {
           return;
      }
 
      else
      {
            customerModel.DeleteCustomer(id);
       }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.05.2018, 23:03
Ответы с готовыми решениями:

SQLite запретить удаление строки, если есть ссылки на нее
Здравствуйте! Как создать таблицы, чтобы при попытке удаления строк в одной из них операция...

Как считать строки из файла, если там больше одной строки?
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько,...

DataGridView как запретить редактировать содержимое строк (уже созданих) но иметь возможность добавлять строки
Вообщем по названию все понятно думаю есть БД подключенная к DataGrid, грид отображает строки...

Как реализовать удаление строки в DataGridView?
как мне сделать возможность удаления строк? единственное что смог придумать это сделать кнопку...

2
228 / 165 / 110
Регистрация: 09.11.2015
Сообщений: 454
25.05.2018, 23:16 2
Green01,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private void butDeleteCustomer_Click(object sender, EventArgs e)
{
      if(dataGridView1.SelectedRows.Count == 0)
      {
            MessageBox.Show("запись не выбрана");
            return;
      }
 
      int index = dataGridView1.SelectedRows[0].Index;
      int id = 0;
      bool converted = Int32.TryParse(dataGridView1[0, index].Value.ToString(), out id);
 
      if (converted == false)
      {
           return;
      }
 
      else
      {
            customerModel.DeleteCustomer(id);
       }
}
2
0 / 0 / 1
Регистрация: 27.09.2015
Сообщений: 121
25.05.2018, 23:25  [ТС] 3
Ellizio, большое спасибо! получилось!
0
25.05.2018, 23:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2018, 23:25
Помогаю со студенческими работами здесь

Запретить пользователю добавлять строки в DataGridView
в dataGridView когда начинаешь заполнять последнюю строку, создается еще одна, мне надо это...

Выполнить макрос если пользователь выбрал один из элементов combobox'а
Вот файл При загрузке страницы выполняется макрос добавления в combobox значений как нужно...

Перенос строки из одной dataGridView в другой dataGridView с Access
Всем привет!!! Подскажите пожалуйста, как из dataGridView1( подключенной к Access) перенести...

Как составить запрос на удаление одной выбранной мною строки
Как составить запрос на удаление одной выбранной мною строки. Если я не понятно задаю вопрос, то...

Как запретить вывод content, если пользователь авторизован
Добрый день! Пишу простейший модуль для DLE. Задача такова: если пользователь авторизован, то...

Как взять значение ячейки в DataGridView, если известен индекс строки
Например у меня есть таблица в 10 строчек, 3 столбца. Есть номер строчки - N Как взять значение...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru