|
2 / 2 / 2
Регистрация: 29.07.2012
Сообщений: 176
|
||||||
DataGridView запрет на внесение записей20.04.2018, 07:49. Показов 1518. Ответов 7
Метки нет (Все метки)
Доброго времени суток.
Есть небольшой проект, разрабатывается для рабочих нужд. На нём имеется несколько dataGridView, которые используются для работы с базой данных. Всё хорошо работает, за исключением одного момента. В каждой таблице есть "лимит" записей. В первой не больше двух, во второй не больше четырёх...число не важно. Важно то, что я это обрабатываю в событии DataGridView1RowsAdded. Если dataGridView.RowCount>limit то dataGridView.AllowUserToAddRows = false; Вылетает ошибка "Указанный индекс строки находился вне допустимого диапазона. Имя параметра: rowIndex". Бился два дня, что сделать не знаю. Создал чистый проект, поместил dataGridView с одной колонкой, и сделал обработчик события DataGridView1RowsAdded
Подскажите, как можно это обойти. Try-catch не помогает. Весь код тестового проекта на изображении. Проект компилится под .NET4.0 в среде SharpDevelop. Из-за неё проблемы?
0
|
||||||
| 20.04.2018, 07:49 | |
|
Ответы с готовыми решениями:
7
Запрет на внесение записей
Внесение изменений через dataGridVIew |
|
2 / 2 / 2
Регистрация: 29.07.2012
Сообщений: 176
|
|
| 20.04.2018, 08:03 [ТС] | |
|
VisualStudio2015 на том-же коде выдаёт ту-же ошибку.
Есть ли решение, кроме альтернативы на событии cell_leave?
0
|
|
|
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
|
|
| 20.04.2018, 08:23 | |
|
Самое простое отрубить изначально добавление записей, а для гридов указать при загрузке формы конкретное количество строк.
0
|
|
|
2 / 2 / 2
Регистрация: 29.07.2012
Сообщений: 176
|
||
| 20.04.2018, 08:34 [ТС] | ||
|
Вы имеете ввиду задать количество через RowCount? Пустые строки игнорируются dataadapter'ом или так-же будут вноситься в БД? в связаном dataset метод haschanges нормально будет обрабатываться, если например в бд строка 1, но через rowcount задаётся 5 ? Извините, что столько вопросов.
0
|
||
|
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
|
|
| 20.04.2018, 08:41 | |
|
1
|
|
|
2 / 2 / 2
Регистрация: 29.07.2012
Сообщений: 176
|
|
| 20.04.2018, 08:46 [ТС] | |
|
Спасибо, вечером попробую.
0
|
|
|
360 / 287 / 76
Регистрация: 21.06.2016
Сообщений: 1,115
|
|
| 20.04.2018, 09:01 | |
|
the_maksimka, Уйдите с понятия грида - переходите на понятие - DataTable - и её запрещайте создавать более максимального количества строк. А также - вместо добавления строки в контроле - добавляйте строку в таблице (NewRow()).
1
|
|
|
2 / 2 / 2
Регистрация: 29.07.2012
Сообщений: 176
|
|
| 07.05.2018, 05:37 [ТС] | |
|
В итоге решил всё поставить в событие cell_leave, там всё работает.
0
|
|
| 07.05.2018, 05:37 | |
|
Помогаю со студенческими работами здесь
8
Внесение изменений в базу данных через DataGridView Внесение записей из файла базы Access в таблицу сервера mssql Обновить datagridview после внесение изменений в БД с другой формы Удаление всех записей из DataGridView и добавление записей Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Функция установки текстового статуса в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению.
На форме документа создается. . .
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|