Bonjour à tous,

Je suis en train de tester actuellement VS 2013 et DevExpress et je rencontre des problèmes (pourtant hyper basique) que je ne rencontrais pas auparavant sur la version 2010 par exemple lors de l'ouverture d'une form...
Du coup je suis perdu car je n'arrive plus a gérer mes ouverture et fermeture de form..

Concrètement je possède ma form1 qui est en IsMDIcontain = true
et mes 3 autres forms vienne s'ouvrir dedans. Mon but étant de n'afficher qu'une form en même temps et donc de fermer les autres si il y en une ouverte

J'utilisai anciennement ce code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Private Sub BarButtonItem1_ItemClick(ByVal sender As System.Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) Handles Ecrandedémarrage.ItemClick
 
            'Permet de gérer les ouverture des forms
            Form2.Close()
            Form3.Close()
        PictureBox1.Visible = True
 
 
    End Sub
 
    Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles pasapas.ItemClick
 
 
        'Ouvrir la form 2
        Form2.MdiParent = Me
        Form2.Show()
        Form3.Close()
        PictureBox1.Visible = False
 
    End Sub
 
    Private Sub BarButtonItem8_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles Gestiondesmaj.ItemClick
 
 
        'Ouvrir la form 3
        Form3.MdiParent = Me
        Form3.Show()
        Form2.Close()
        PictureBox1.Visible = False
 
    End Sub
Et avec ceci j'ai une erreur qui me dis : "Une référence à un membre non partagé requiert une référence d'objet"

Du coup je suis obligé de déclarer mes forms comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub BarButtonItem1_ItemClick(ByVal sender As System.Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) Handles Ecrandedémarrage.ItemClick
 
        Dim Form2 As New Form2
        Dim Form3 As New Form3
 
        'Permet de gérer les ouverture des forms
        Form2.Close()
        Form3.Close()
        PictureBox1.Visible = True
 
 
    End Sub
 
    Private Sub BarButtonItem5_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles pasapas.ItemClick
 
        Dim Form2 As New Form2
        Dim Form3 As New Form3
 
        'Ouvrir la form 2
        Form2.MdiParent = Me
        Form2.Show()
        Form3.Close()
        PictureBox1.Visible = False
 
    End Sub
 
    Private Sub BarButtonItem8_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles Gestiondesmaj.ItemClick
 
        Dim Form2 As New Form2
        Dim Form3 As New Form3
 
        'Ouvrir la form 3
        Form3.MdiParent = Me
        Form3.Show()
        Form2.Close()
        PictureBox1.Visible = False
 
    End Sub
sauf que à chaque fois que je clique sur un button pour ouvrir la form que je souhaite, il m'en ouvre une seconde voir des tonne si j'appuis plus de fois...

Je souhaiterai simplement en ouvrir qu'une à la fois et fermer les autres si il y en a de lancer.

Auriez-vous une solution pour un débutant comme moi afin de gérer mes form dans ma form1 ??

Merci pour votre futur aide

Très cordialement,