Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / из модальной формы к объектам MDI приложения / 7 сообщений из 7, страница 1 из 1
14.05.2004, 16:35
    #32518613
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
открываю в MDI приложении из подчиненной формы модальную, и из модальной не могу
обратится к элементам той подчиненной формы
по ссылке на ту форму не находит
помогите примером
...
Рейтинг: 0 / 0
14.05.2004, 19:13
    #32518894
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
Код: plaintext
1.
2.
3.
4.
5.
6.
' Код в форме из которой вызывается модальный диалог пусть например MainForm
Dim f as ModalForm = new ModalForm()
f.ShowDialog(Me)

' Код уже из модальной формы
Dim mainForm as MainForm = CType(f.Owner, MainForm)
...
Рейтинг: 0 / 0
14.05.2004, 19:19
    #32518897
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
Не дописал

Теперь можешь обращаться к элементам подчиненной формы в этом примере это mainForm
...
Рейтинг: 0 / 0
15.05.2004, 15:10
    #32519181
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
если делать как ты написал, то в модальной форме
Dim mainForm as MainForm = CType( f .Owner, MainForm)
ругается name "f" is not declared

я добавил в модальной так
Dim f As MainForm
Dim mainForm as MainForm = CType(f.Owner, MainForm) тогда при выполнении ругается:
В экземпляре объекта не задана ссылка на объект.
...
Рейтинг: 0 / 0
15.05.2004, 15:22
    #32519189
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
Очепятка
Код: plaintext
1.
2.
3.
4.
5.
' Код в форме из которой вызывается модальный диалог пусть например MainForm
Dim f as ModalForm = new ModalForm()
f.ShowDialog(Me)
' Код уже из модальной формы
Dim mainForm as MainForm = CType(Me.Owner, MainForm) // Вот так надо
...
Рейтинг: 0 / 0
15.05.2004, 17:04
    #32519239
Артист
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
Невыйдет так для модальной...
сделай в модальной форме примерно такую функцию
Код: plaintext
1.
2.
3.
4.
5.
    Friend Function AddText(ByRef strF As String) As Boolean
        ShowDialog()
        strF = Me.TextBox1.Text
        ...
        Return True
    End Function
а из подчиненной так делай вызов и получение
Код: plaintext
1.
2.
3.
4.
        Dim f as ModalForm = new ModalForm()
        Dim strF As String
        If f.AddText(strF) Then
            Me.TextBox2.Text = strF
        End If
...
Рейтинг: 0 / 0
16.05.2004, 08:44
    #32519337
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
из модальной формы к объектам MDI приложения
>Невыйдет так для модальной...
Однако работает...

Этот метод является наиболее универсальным, так как позволяет обращаться к любым элементам форм(конечно при наличии как минимум модификатора Friend) и к любому количеству форм в случае Mdi.

Ключевая строка - f.ShowDialog(Me). Где Me в простом случае является владельцем модальной формы. Тоесть Owner = вернет форму вызвавшей диалог. Но не в простейшем случае когда мы имеем дело с MDI Owner вернет главную форму, но доступ легко осуществить стандартно через коллекцию MdiChildren и к любым формам из этой коллекции ( то есть можно например менять текст одновременно в двух - и т.д формах)

Если что то непонятно могу приведу маленький пример
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / из модальной формы к объектам MDI приложения / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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