none
Formulaire MDI, Dialogue entre-formulaire, Problème Me.Owner ? RRS feed

  • Question

  • Bonjour

     

    J'ai un formulaire principal MDI, FormMDI, qui ouvre un autre formulaire enfant FormA:

     

    Code Snippet

    Dim ChildFrmA As New FormA() ChildFrmA.MdiParent = Me ChildFrmA.Show()

     

    Dans le formulaire FormA, j'ai un bouton qui ouvre un autre formulaire FormB, qui est enfant du formulaire MDI.

    Code Snippet
    Dim ChildFrmB As New FormB ChildFrmB.MdiParent = FormMDI ChildFrmB.Show()

     

    Jusque là je n'ai pas de problème. Par contre ce que je souhaiterais faire c'est pouvoir avoir accès à une procédure Public du formulaire FormA.
    Je connais l'instruction Owner, que j'ai utilisé plus haut. Mais je ne peux pas utiliser ChildFrmB.Showdialog(Me)

    Code Snippet
    Dim ChildFrmB As New FormB ChildFrmB.MdiParent = FormMDI ChildFrmB.Showdialog(Me)

     

    Autrement j'obtiens une erreur sur le niveau des formulaires...

    Comment faire pour utiliser owner ? Ou pour avoir accès à la procédure public du formulaire FormA ?

     

    Merci

     

    Gwendal

    lundi 30 avril 2007 18:25

Réponses

  • Code :
     
    Public Class Form1
    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim f As New Form2
    f.MaForm1Parente = Me
    f.Show()
    End Sub
    Friend Sub test()
    MsgBox("Yop man !")
    End Sub
    End Class
     
    Public Class Form2
    Private frmMaForm1Parente As Form1
    WriteOnly Property MaForm1Parente() As Form1
    Set(ByVal value As Form1)
    frmMaForm1Parente = value
    End Set
    End Property
    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    frmMaForm1Parente.test()
    End Sub
    End Class
     
    samedi 5 mai 2007 16:55