|
|
|
новичок
      
участник
Last Login: 22.07.2003 16:24
Сообщ.: 9,
Visits: 100
|
|
Помогите плиз решить такую проблему! Есть главная форма (Form1) и форма Form2! Из первой я вызываю вторую и дальше мне надо при закрытии Form2 перерисовать Form1 (дабы обновилось меню), так вот что то у меня это никак не получается... Я пробовал уже и refresh и Update, и нифига...Как быть? Я пробовал еще таким образом:
Application.Close Application.Run(new Form1())
На втором операторе выкидывает ошибку... Скажите как перезгрузить приложение? Спасибо!
|
|
|
|
|
Supreme Being
      
участник
Last Login: 10.09.2003 19:47
Сообщ.: 80,
Visits: 881
|
|
| Если не трудно, приведите код плз.
|
|
|
|
|
новичок
      
участник
Last Login: 22.07.2003 16:24
Сообщ.: 9,
Visits: 100
|
|
Код ошибки?
An unhandled exception of type 'System.InvalidOperationException' occurred in system.windows.forms.dll
Additional information: It is invalid to start a second message loop on a single thread. Use Application.RunDialog or Form.ShowDialog instead.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 10.09.2003 19:47
Сообщ.: 80,
Visits: 881
|
|
Нет... Код программы. Как вызываете? Чего вторая форма делает? Как рефрешите первую?
|
|
|
|
|
новичок
      
участник
Last Login: 22.07.2003 16:24
Сообщ.: 9,
Visits: 100
|
|
Ok! Из Form1 вызываю Form2...
Dim MyForm2 as new Form2 MyForm2.Show()
В Form2 я некие данные из TextBox-ов сохраняю в XML файл, и полный путь к файлу прописываю в файл .ini Теперь после того как я это все сделал мне надо закрыть Form2 и обновить Form1, поскольку в главном меню Form1, должен появится мой XML файлик (это типа Recent Files)...Пункты меню формируются процедуркой по OnLoad_Form1...
В коде Form2 получается так...
.... Close() 'закрываю форму 2 Dim MyForm1 as new Form1 MyForm1.Refresh()
и нифига...пробовал MyForm1.Update() пробовал Application.Close() Application.Run(new Form1()) ...Если сделать MyForm1.show() то открывается еще один экземпляр Form1 с обновленным меню, но старый экземпляр надо как то грохнуть...
Буду признателен если научите как это все сделать по человечески...
|
|
|
|
|
Supreme Being
      
участник
Last Login: 10.09.2003 19:47
Сообщ.: 80,
Visits: 881
|
|
Стоп ... во первых почему Вы вызываете вторую форму не модально? (Иил так задумано?) Во вторых Dim MyForm1 as new Form1 по моему не совсем то ... или Вы первую форму закрываете, когда вторую вызываете?
|
|
|
|
|
новичок
      
участник
Last Login: 22.07.2003 16:24
Сообщ.: 9,
Visits: 100
|
|
Нет ну вообще то надо модально, а что есть принципиальная разница при рефреше?
При запуске второй формы первая не закрывается...не надо писать new да?
|
|
|
|
|
Supreme Being
      
участник
Last Login: 10.09.2003 19:47
Сообщ.: 80,
Visits: 881
|
|
Делаете так:
во второй форме объявляете переменную public XMLFileName As String В нее нада запихать имя файла в который вы чего-то там сохраняете.
в первой форме пишете private sub Save() Dim SecondForm as New Form2() SecondForm.ShowDialog() Call AddToRecent(SecondForm.XMLFileName) End Sub Где AddToRecent добавляет имя файла в Recent
|
|
|
|
|
|
| | |