PDA

View Full Version : [VB.NET] Aprire un form MdiContainer da un Form figlio...


race2
26-05-2003, 14:46
Ho un Form Padre dal quale apro un Form Figlio il quale a sua volta ha un pulsante che apre un altro Form, solo che questo ultimo Form non e' Figlio del Padre perche' ???

la Sub del Form Padre che apre il Form Figlio:

Dim Form As New FormFiglio()
Form.MdiParent = Me
Form.Show()

la Sub del Form Figlio che apre l'ultimo Form :

Dim NuovoForm As New NuovoFormFiglio()
NuovoForm.Show()

Cosa devo modificare per potere rendere Figlio pure l'ultimo Form ???

tas
27-05-2003, 10:29
Prova così
Nel form figlio:

Dim NuovoForm As New NuovoFormFiglio()

NuovoForm.MdiParent = Me.MdiParent

NuovoForm.Show()

race2
27-05-2003, 11:29
Funziona!!!

solo una cosa a me serve necessariamente un FormDialog e non un semplice Form, pero' il FormDialog non me lo accetta!!!

ERRORE!!!
--------------------------------------------------------------------------------
Informazioni aggiuntive: I form non di livello principale non possono essere visualizzati come finestra di dialogo modale. Rimuovere il form da eventuali form padre prima di chiamare showDialog
--------------------------------------------------------------------------------

tas
27-05-2003, 12:28
Un form non può essere contemporaneamente sia MDI child che modale. Ma tu che vorresti fare?

race2
27-05-2003, 12:34
io voglio aprire un Form con ShowDialog() in modo che appena lo chiudo mi esegue la funzione o la Sub che e' posta subito sotto lo ShowDialog(),

ShowDialog()
Private Sub PopoloQualcosa()
### code ###
End Sub

solo questo!!!

tas
27-05-2003, 15:17
Se il form che vuoi aprire è modale (e non MDI child) fai così:
Dim f as New NuovoFormFiglio()
f.ShowDialog()
'il codice che segue verrà eseguito alla chiusura del form modale
...


Se invece il form che vuoi aprire è MDI child, allora devi usare l'evento Closed del form stesso.

race2
27-05-2003, 15:29
Questo lo sapevo, la cosa che non so e' come fare a richiamare una Sub Pubblica nel Form "Figlio" alla chiusira del Form "Nipote",

io conosco solo il metodo del Modulo..., l'unica cosa che e' tutto allo scoperto...