Izzy Decorte Ответов: 2

Если я добавляю данные в форму 2 и сохраняю их, как обновить datagridview в форме 1


Я делаю программу базы данных, где я могу добавить новых пациентов в таблицу доступа.
В форме 1 я нажимаю кнопку "Добавить пациента".

откроется форма 2 с текстовыми полями для заполнения данных.
данные сохраняются правильно, но я хочу обновить представление данных пациента в форме 1, когда закрою форму 2?

Что я уже пробовал:

Я нашел суб, которая обрабатывает меня.закрыто, но я не могу добавить form1 в код?

Private Sub FormMakeDossier_Closed(sender As Object, e As EventArgs) Handles Me.Closed

    End Sub

2 Ответов

Рейтинг:
2

OriginalGriff

Обработайте закрытое событие в Form1, добавив его в экземпляр Form2, который вы создаете непосредственно перед вызовом Show на нем.
Когда Form2instance закроется, событие будет вызвано, и у вас будет Form1 внутри Me как обычно, и форма 2 передается вам в качестве sender параметр.
Затем вы можете использовать свойство или метод в Form2 для доступа к информации, необходимой Form1:

Форма, которая создает экземпляр другого:

MyForm mf = new MyForm();
mf.Show();
Это "родитель", другая форма - "Ребенок".
(Это не подразумевает никаких формальных отношений MDI)

Передача информации между двумя формами, Часть 2: Ребенок-Родитель[^] Код написан на языке C#, но он довольно прост и очевиден.


Izzy Decorte

Извините, но я не могу заставить его работать. Я не разбираюсь в c# и не конвертирую это в vb.net

OriginalGriff

Это довольно тривиально: создайте событие в своей форме2 (https://docs.microsoft.com/en-us/dotnet/visual-basic/programming-guide/language-features/events/walkthrough-declaring-and-raising-events)
Обработайте его в форме 1 (вы уже знаете, как это сделать)
Поднимите его из формы 2, Когда вы хотите, чтобы форма 1 запустила таймер. (см. ссылку выше)
В обработчике запустите таймер.

Дайте ему попробовать!

Рейтинг:
0

Gerry Schmitz

Используйте "статическую" наблюдаемую коллекцию (OC). Форма добавляется в коллекцию; сетка обновляется автоматически с использованием OC в качестве источника данных; а события, запускаемые при изменении коллекции, могут быть использованы для обновления базы данных Access.