powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Редактирование с помощью DataGridView
8 сообщений из 8, страница 1 из 1
Редактирование с помощью DataGridView
    #34488484
Sharic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.
Возник такой вопрос:
Для редактирования информации из БД я использую DataGridView.
Пользователю отображается информация из БД, потом он вносит изменения в ячейках DataGridView и я их проверяю. Так вот, если введенное значение меня не устроило, как вернуть старое значение ячейки.
Пробую сделать так:
перехватываю событие завершения редактирования, проверяю введенные данные и если они неверные, то пытаюсь присвоить другое значение...
Однако, в DataGridView и в DataSourсe остается введенное пользователем.
Может предыдущее значение хранится где-то?
Или как-то можно программно отменить редактирование, типа нажатия Esc?
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34491234
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sharic
Для редактирования информации из БД я использую DataGridView.

есть возможность вызвать RejectChanges у источника данных. Если не покидаете строку то CancelEdit

А вообще редактировать непосредственно в гриде ИМХО не есть хорошо.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34491478
Sharic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
есть возможность вызвать RejectChanges у источника данных. Если не покидаете строку то CancelEdit


Спасибо, это конечно помогает. Просто я думал, что отменить редактирование можно сразу в обработке события CellParsing, а в это время, я так понимаю, еще новое значение не присвоено ячейке.

автор
А вообще редактировать непосредственно в гриде ИМХО не есть хорошо.


Хм, я первый раз работаю с базой данных и как-то ничего более подходящего не нашел.
Может правда есть варианты получше? Подскажите, плиз.
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34503488
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sharic
Хм, я первый раз работаю с базой данных и как-то ничего более подходящего не нашел.
Может правда есть варианты получше? Подскажите, плиз.

Да обычный самый примитивный вариант, грид для просмотра, текстбоксы и другие компоненты для редактирования. ИМХО обязательно наличие кнопок "ОК" и "Отмена" для возможной фиксации изменений или отмены оной.

Код: plaintext
 uid  =  S a

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34509080
Sharic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все...теперь поясню, что именно мне было непонятно.
Для редактирования я решил оставить датагрид, кнопка по которой изменения вносятся в базу данных у меня имеется.
При изменении содержимого ячейки возникает событие CellParsing, в этот момент в ячейке грида и в датасорсе еще старые значения, а новое, введенное пользователем получаем как DataGridViewCellParsingEventArgs e.Value. Это значение можно обработать, проверить и принять решение устраивает оно меня или нет. Вот только редактирование тут еще нельзя отменить, то есть CancelEdit не срабатывает.
Сразу за этим событием возникает другое событие CellEndEdit, вот тут уже введеные значения присвоены и источнику и гриду. Теперь можно сделать отмену редактирования.
:-)
Все оказалось достаточно просто, вот только в обилии методов и событий грида новичку было сложно разобраться.
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34820041
Surgeon2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для удаления строк используется DataGridView.
Мышкой нажимаю на строку, она отмечается и нажимаю кнопку Delete на форме.
Чтобы удаление произошло мне надо получить ID записи, но тип DataGridViewRow не разрешает обращение к конкретному полю, наприме: row["Title_ID"].
Как быть?
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34826938
Sharic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я правильно понимаю вопрос?
dg.Rows[0].Cells["id"].Value - не получается получить значение?
...
Рейтинг: 0 / 0
Редактирование с помощью DataGridView
    #34826958
Sergey Tokarev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CellValidating событие попробуйте
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Редактирование с помощью DataGridView
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]