Salut,

J'aimerais afficher les propriétés d'un objet contenant des objets dans une property grid.

Voici un exemple simplifié :
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
46
47
48
49
 
 
'Les imports
 
<DefaultPropertyAttribute("Gestion parametres")> _
<Serializable()> _
<XmlRootAttribute(Namespace:="", ElementName:="PARAM", IsNullable:=False)> _
Public Class Cls_Param
 
    Public _MyclsTest As new clsTest
 
 
    Public Property MyclsTest() As clsTest
        Get
            Return _MyclsTest
        End Get
        Set(ByVal value As clsTest)
            _MyclsTest = value
        End Set
    End Property
 
    <Serializable()> _
    Public Class clsTest
 
        Private _AppName As String
 
        <CategoryAttribute("Application"), _
           Browsable(True), _
           [ReadOnly](False), _
           BindableAttribute(False), _
           DesignOnly(False), _
           DescriptionAttribute("Le nom de l'application"), _
           XmlAttribute(AttributeName:="AppName")> _
            Public Property AppName() As String
            Get
                Return _AppName
            End Get
            Set(ByVal value As String)
                _AppName = value
            End Set
        End Property
 
End class
 
    Public Sub New()
        _MyclsTest = New clsTest
    End Sub
 
End Class
Dans ma form :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
Public G_Param As New Cls_Param
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.PropertyGrid1.SelectedObject = G_Param
    End Sub
Je voudrais serialiser cls_param qui contiendra d'autres objets.

Si je fais :
Me.PropertyGrid1.SelectedObject = G_Param.cls_test , cela fonctionne et je vois les différentes propriétés de l'objet.
Par contre si je fais :
Me.PropertyGrid1.SelectedObject = G_Param , cela ne fonctionne pas .

Comment procéder ?

Merci