powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Изменение данных в другой форме.
4 сообщений из 4, страница 1 из 1
Изменение данных в другой форме.
    #36118119
Фотография jsmirnoww
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VB2008, MS SQL 2005.

Суть:
Есть основная и подчиненная таблицы.
Есть форма для редактирования основной таблицы (карточка документа) - основная форма.
По кнопке открывается форма с содержимом подчиненной таблицы - подчиненная форма.
Надо сделать, что бы если я нажал на основной форме кнопку "отмена", то данные измененные в подчиненной форме тоже не сохранились.

Мой вариант решения:
При открытии основной формы загружать из БД данные в обе таблицы

При открытии подчиненной формы в ней создавать клон таблицы с основной формы, там этот клон редактировать

При закрытии подчиненной формы сбрасывать изменения в DataTable основной формы

Если на основной форме нажали Ok, то записывать обе таблицы в базу

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

Еще тонкость:
В подчиненной форме должны показываться не все записи из подчиненной таблицы, а отбираться по фильтру. (если это на что-то повлияет :) )
...
Рейтинг: 0 / 0
Изменение данных в другой форме.
    #36119531
stimpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Работать с оригинальной таблицей, при нажатии отмена вызывать DataTable.RejectChanges() , собственно и все.
...
Рейтинг: 0 / 0
Изменение данных в другой форме.
    #36119660
Фотография jsmirnoww
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
программно на подчиненной форме создал BindingSource и привязал его к таблице на основной форме. и в нем же сделал фильтр. Идея такая?
...
Рейтинг: 0 / 0
Изменение данных в другой форме.
    #36119694
stimpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Идея такая что у каждой DataRow есть DataRowState, когда вы что-либо меняете в гриде это автоматически сказывается на этом состоянии, и потом можно проследить что было изменено (это состояние также использует адаптер, для того чтобы узнать какую из команд использовать для обновления БД Update/Insert/Delete), также DataRow хранит всегда данные которые были в состоянии Unchanged, метод таблицы или строки AcceptChanges() сбрасывает состояния всех строк в Unchanged, а с помощью RejectChanges() вы можете вернуть исходные данные, насколько я понял это вам и надо.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Изменение данных в другой форме.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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