''' <summary> ''' Contient les éléments constituant un Panel personnalisé ''' </summary> ''' <remarks></remarks> <Serializable()> Public Class clsMonPanel Private pTextBox As String Private pLabel As String Private pListeCombo As New List(Of String) Private pElementSelectionne As Integer Public Sub New() End Sub Public Property ContenuTextBox() As String Get Return pTextBox End Get Set(ByVal value As String) pTextBox = value End Set End Property Public Property ContenuLabel() As String Get Return pLabel End Get Set(ByVal value As String) pLabel = value End Set End Property <XmlElement("ElementCombo", GetType(String))> Public Property ListeCombo() As List(Of String) Get Return pListeCombo End Get Set(ByVal value As List(Of String)) pListeCombo = value End Set End Property Public Property ElementSelectionne() As Integer Get Return pElementSelectionne End Get Set(ByVal value As Integer) pElementSelectionne = value End Set End Property
''' <summary> ''' Contient un ensemble de panel personnalisés ''' </summary> ''' <remarks></remarks> <Serializable()> Public Class clsListeDe_MonPanel Private pListeMonPanel As New List(Of clsMonPanel) Public Sub New() End Sub <XmlElement("MonPanel", GetType(clsMonPanel))> Public Property Items() As List(Of clsMonPanel) Get Return pListeMonPanel End Get Set(ByVal value As List(Of clsMonPanel)) pListeMonPanel = value End Set End Property End Class
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPrivate Sub btnAjouterPanel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAjouterPanel.Click 'Créer une instance de la classe clsMonPanel Dim monPanel As New clsMonPanel 'Affecter les valeurs par défaut With monPanel .ContenuLabel = "Panel n°" & (mesPanels.Items.Count + 1).ToString .ContenuTextBox = "Essai Textbox" .ListeCombo.Add("Elément 1") .ListeCombo.Add("Elément 2") .ListeCombo.Add("Elément 3") .ElementSelectionne = 0 End With 'Ajouter cette instance à la classe clsListeDe_MonPanel mesPanels.Items.Add(monPanel) 'Il ne reste plus qu'à créer physiquement le nouveau Panel et à lui affecter les valeurs par défauts 'Ca c'est ton boulot ! End Sub
Private Sub btnEnregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnregistrer.Click 'Serialisation XML Dim stream As System.IO.StreamWriter = New System.IO.StreamWriter(My.Computer.FileSystem.SpecialDirectories.MyDocuments & "\text.xml") Try Dim serializer As New XmlSerializer(GetType(clsListeDe_MonPanel)) serializer.Serialize(stream, mesPanels) Catch ex As Exception MessageBox.Show(ex.Message) Finally stream.Close() End Try End Sub Private Sub btnCharger_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCharger.Click 'Serialisation XML Dim stream As System.IO.StreamReader = New System.IO.StreamReader(My.Computer.FileSystem.SpecialDirectories.MyDocuments & "\text.xml") Try Dim deserializer As New XmlSerializer(GetType(clsListeDe_MonPanel)) mesPanels = CType(deserializer.Deserialize(stream), clsListeDe_MonPanel) Catch ex As Exception MessageBox.Show(ex.Message) Finally stream.Close() End Try End Sub
Imports System.Xml.Serialization
Public Class Form4 Private mesPanels As New clsListeDe_MonPanel Private Sub btnAjouterPanel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAjouterPanel.Click 'Créer une instance de la classe clsMonPanel Dim monPanel As New clsMonPanel With monPanel .ContenuLabel = "Panel n°" & (mesPanels.Items.Count + 1).ToString .ContenuTextBox = "Essai Textbox" .ListeCombo.Add("Elément 1") .ListeCombo.Add("Elément 2") .ListeCombo.Add("Elément 3") .ElementSelectionne = 0 End With 'L'ajouter à la classe clsListeDe_MonPanel mesPanels.Items.Add(monPanel) 'Il ne reste plus qu'à créer physiquement le nouveau Panel et à lui affecter les valeurs par défauts ' End Sub Private Sub btnEnregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnregistrer.Click 'Serialisation XML Dim stream As System.IO.StreamWriter = New System.IO.StreamWriter(My.Computer.FileSystem.SpecialDirectories.MyDocuments & "\text.xml") Try Dim serializer As New System.Xml.Serialization.XmlSerializer(GetType(clsListeDe_MonPanel)) serializer.Serialize(stream, mesPanels) Catch ex As Exception MessageBox.Show(ex.Message) Finally stream.Close() End Try End Sub Private Sub btnCharger_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCharger.Click 'Serialisation XML Dim stream As System.IO.StreamReader = New System.IO.StreamReader(My.Computer.FileSystem.SpecialDirectories.MyDocuments & "\text.xml") Try Dim deserializer As New System.Xml.Serialization.XmlSerializer(GetType(clsListeDe_MonPanel)) mesPanels = CType(deserializer.Deserialize(stream), clsListeDe_MonPanel) Catch ex As Exception MessageBox.Show(ex.Message) Finally stream.Close() End Try End Sub ''' <summary> ''' Contient un ensemble de Panels personnalisés ''' </summary> ''' <remarks></remarks> <Serializable()> Public Class clsListeDe_MonPanel Private pListeMonPanel As New List(Of clsMonPanel) Public Sub New() End Sub <System.Xml.Serialization.XmlElement("MonPanel", GetType(clsMonPanel))> Public Property Items() As List(Of clsMonPanel) Get Return pListeMonPanel End Get Set(ByVal value As List(Of clsMonPanel)) pListeMonPanel = value End Set End Property End Class ''' <summary> ''' Contient les éléments constituant un Panel personnalisé ''' </summary> ''' <remarks></remarks> <Serializable()> Public Class clsMonPanel Private pTextBox As String Private pLabel As String Private pListeCombo As New List(Of String) Private pElementSelectionne As Integer Public Sub New() End Sub Public Property ContenuTextBox() As String Get Return pTextBox End Get Set(ByVal value As String) pTextBox = value End Set End Property Public Property ContenuLabel() As String Get Return pLabel End Get Set(ByVal value As String) pLabel = value End Set End Property <System.Xml.Serialization.XmlElement("ElementCombo", GetType(String))> Public Property ListeCombo() As List(Of String) Get Return pListeCombo End Get Set(ByVal value As List(Of String)) pListeCombo = value End Set End Property Public Property ElementSelectionne() As Integer Get Return pElementSelectionne End Get Set(ByVal value As Integer) pElementSelectionne = value End Set End Property End Class End Class