Bonjour,

En se moment je suis plus ou moins accro au class, je commence de plus en plus à intégrer des classes dans mes structures surtout pour la configuration de mon interface graphique car je me rend compte que sa facilite mon code et sa permet de rendre mon interface plus ré-utilisable par la suite genre juste a changer le code de configuration et mon interface a un nouveau visage sans avoir a changer l'ensemble de mon code.

Alors en se moment, sur mon interface, j'ai un DGV avec genre 10 colonnes et il y aura un menu avec plusieurs onglets qui doit s'ouvrir sur chaque colonne, ces menus sont uniques suivant chaque colonne. Mon idée est de créer une class Menu qui contient le nom de la colonne, le nombre d'onglet dans le menu et la liste des noms de chaque onglets. Ensuite il y a une class Onglet qui elle regroupe le nom de l'onglet et son état. Alors mon but est que lors de la configuration, je créer par exemple 10 menus avec chacun un nombre d'onglet précis et le nom de tous les onlgets.

Mon souci est que je vois pas comment je vais lié ma class Onglet dans la class Menu, j'ésite entre l'héritage, une propriété ListNameOnglet du type Dico(String, Onglet) et comment les configurer par la suite cette liste sachant que cette liste peut être dynamique.


Voila un début de mon 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
    Public Class Menu
        Private msName As String
        Private msLength As Integer
        Private msListOnglet As Dictionary(Of String, Onglet)
 
        Public Property Name() As String
            Get
                Return msName
            End Get
 
            Set(ByVal value As String)
                msName = value
            End Set
        End Property
 
        Public Property Length() As Integer
            Get
                Return msLength
            End Get
 
            Set(ByVal value As Integer)
                msLength = value
            End Set
        End Property
 
        Public Property ListOnglet() As Dictionary(Of String, Onglet)
            Get
                Return msListOnglet
            End Get
 
            Set(ByVal value As Dictionary(Of String, Onglet))
                msListOnglet = value
            End Set
        End Property
    End Class
 
 
    Public Class Onglet
        Public Sub New(ByVal a As String)
            Etat = False
            Name = a
        End Sub
        Private Etat As Boolean
        Private Name As String
    End Class

Merci d'avance pour vos suggestions !!

PS: Je viens de rajouter une méthode AddOnglet dans ma class Menu, je commence déjà a voir comment sa va marcher mais j'attends tous de même vos suggestions sur la meilleure manière de construire ce genre de structure !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
        Public Sub AddOnglet(mName As String, mOnglet As Onglet)
            ListOnglet.Add(mName, mOnglet)
        End Sub