Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 11.04.2011, 09:37   #1
---FISHER---
Форумчанин
 
Аватар для ---FISHER---
 
Регистрация: 08.08.2009
Адрес: Уфа
Сообщений: 68
Репутация: 10

icq: 444066509
По умолчанию Управление элементами одной формы через другую

Здравствуйте! Проблема такая: есть две формы, на одной (главная) грид и все сопутствующие элементы для отображения таблицы из бд (бд акцесс), на второй форме (дочерняя) несколько текст боксов и кнопка для добавления данных в эту самую таблицу. При нажатии кнопки, данные попадают в таблицу, но в гриде всё попрежнему без изменений. Собственно вопросы: какими средствами обновлять грид? И как управлять элементами одной формы через другую? Извиняюсь если эта тема повтор, но подобной я найти не смог. Спасибо за внимание!
__________________
Самое дорогое, что у нас есть - это время...
---FISHER--- вне форума   Ответить с цитированием
Старый 11.04.2011, 11:35   #2
pu4koff
ПрофессионалФорумчанин
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,496
Репутация: 3616
По умолчанию

Цитата:
Сообщение от ---FISHER--- Посмотреть сообщение
Здравствуйте! Проблема такая: есть две формы, на одной (главная) грид и все сопутствующие элементы для отображения таблицы из бд (бд акцесс), на второй форме (дочерняя) несколько текст боксов и кнопка для добавления данных в эту самую таблицу. При нажатии кнопки, данные попадают в таблицу, но в гриде всё попрежнему без изменений.
Я так понимаю, для редактирования записей в таблице используется модальный диалог? т.е. пока не жмякнешь в нём кнопку "ОК" или "Отмена", дальше работать нельзя? В таком случае, нужно в главной форме с табличкой определять как этот диалог закрылся. Точно названия методов не скажу, но примерно тут нужно действовать так:
У кнопок должно быть свойство что-то вроде DialogResult. Там для кнопки OK выставляем собственно OK. Ну а для кнопки "Отмена" соответственно выставляем в Cancel. Ну а форму для редактирования показываем так:
Код:
if (form2.ShowModal() == DialogResult.OK)
{
  // Нажали "ОК", т.е. данные изменились и грид можно менять
  ...
}
else
{
  // Нажали "Отмена" или закрыли форму крестиком
  ...
}
Цитата:
Сообщение от ---FISHER--- Посмотреть сообщение
Собственно вопросы: какими средствами обновлять грид?
т.к. тут участвует посредник в виде СУБД (Access) и теоретически возможна многопользовательская работы, то тут лучше перечитать данные в грид заново. Ну а как перечитывать данные должно быть понятно, ведь они как-то туда попали уже
Цитата:
Сообщение от ---FISHER--- Посмотреть сообщение
И как управлять элементами одной формы через другую?
Это некрасиво, нехорошо и неположено. Хотя в редакторе форм можно у любой кнопочки, у любой таблички сменить модификатор доступа с private на public и проблем с доступом к этой самой кнопочки никаких не будет. Но это не тру ООП и так не делают. А всё потому, что котлеты должны быть отдельно, а мухи - отдельно.
pu4koff вне форума   Ответить с цитированием
Старый 11.04.2011, 11:47   #3
---FISHER---
Форумчанин
 
Аватар для ---FISHER---
 
Регистрация: 08.08.2009
Адрес: Уфа
Сообщений: 68
Репутация: 10

icq: 444066509
По умолчанию

Цитата:
т.к. тут участвует посредник в виде СУБД (Access) и теоретически возможна многопользовательская работы, то тут лучше перечитать данные в грид заново. Ну а как перечитывать данные должно быть понятно, ведь они как-то туда попали уже
я ничего не писал чтобы данные туда попали, просто поставил в свойствах грида источник данных, таблицу клиентов и всё...

Цитата:
Я так понимаю, для редактирования записей в таблице используется модальный диалог?
для редактирования просто форма, ну конечно модальная, но не диалог. Однако свойств диалогрезульт у неё нет, можно обработку конечно поставить просто на событие он_клос, думаю так тоже будет нормально?
__________________
Самое дорогое, что у нас есть - это время...
---FISHER--- вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копировать и вставить из одной формы в другую scarp55 Microsoft Office Access 5 06.04.2011 16:03
Копировать и вставить из одной формы в другую scarp55 Microsoft Office Excel 0 29.03.2011 20:45
Переход из одной формы в другую Axlen Microsoft Office Access 2 22.04.2010 07:40
C#: Передать значение переменной из одной формы в другую Veiron Общие вопросы .NET 3 29.06.2009 17:43
как перейти из одной формы в другую lusek Общие вопросы Delphi 7 01.02.2009 15:16


07:27.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.