PropertyGrid et lecture fichier XML
Bonjour à tous,
En Préambule, je précise : débutant...
J'alimente un propertygrid avec un fichier XML; tout se passe normalement.
L'objectif est de permettre à l'utilisateur, pour une propriété, le choix dans une liste en cas de création - modification, ou bien de saisir une valeur non encore répertoriée.
Bref le fonctionnement classique d'un combobox bindé.
Le problème se situe dans le chargement des valeurs proposées pour cette propriété; je n'obtiens toujours que la seule valeur lue dans mon fichier XML.
Mes recherches sur les forums n'ont rien donné...
Voici le code :
Code:
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
|
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing.Design
Imports System.Xml.Serialization
Public Class ListEvenement
Inherits TypeConverter 'même comportement avec StringConverter
Public Overloads Overrides Function GetStandardValuesSupported( _
ByVal context As ITypeDescriptorContext) As Boolean
Return True
End Function
Public Overloads Overrides Function GetStandardValues( _
ByVal context As ITypeDescriptorContext) _
As StandardValuesCollection
Return New StandardValuesCollection(New String() {"test1", _
"test2", _
"test3"})
End Function
Public Overloads Overrides Function GetStandardValuesExclusive( _
ByVal context As ITypeDescriptorContext) As Boolean
Return False
End Function
End Class
<Serializable()> _
Public Class Calendrier
Private VCalEvnt As String
<TypeConverter(GetType(ListEvenement)), BrowsableAttribute(True), _
Description("Nom de l'évènement"), Category("Evènement"), DisplayName("Evènement"), _
Editor(GetType(MultilineStringEditor), GetType(UITypeEditor)), _
XmlAttribute()> _
Public Property CalEvnt() As String
Get
Return VCalEvnt
End Get
Set(ByVal value As String)
VCalEvnt = value
End Set
End Property |
Pour le chargement dans le formulaire :
Code:
1 2 3 4 5
|
Private Sub CalBS_CurrentChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CalBS.CurrentChanged
'PG = PropertyGrid - BS = BindingSource
CalPG.SelectedObject = CalBS.Current
End Sub |
Si quelqu'un peut m'orienter... Merci d'avance