begin process at 2012 02 15 22:49:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Divers

 > 

General

 > 

Persistance des items d'une collection au moment du design


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Persistance des items d'une collection au moment du design

lundi 30 juin 2008 à 21:52:57 | Persistance des items d'une collection au moment du design

Kevin.Ory

Bonsoir,
J'ai créé un contrôle ayant comme propriété une collection d'objets. Mon problème est que les items contenus dans cette collection ne sont pas persistants au moment du design. Autrement dit, lorsque on ajoute des items à la collection au moment du design, aucun code n'est créer par le designer pour ajouter ces items à la collection.

Voici mon contrôle:
Public Class MyControl
    Inherits Control

    Public ReadOnly Property Items() As List(Of Panel)
        Get
            Return _Items
        End Get
    End Property
    Private _Items As New List(Of Panel)

End Class

Lorsque on ajoute un item à la collection (toujours au moment du design), le designer va déclarer l'item (il s'agit d'un control) mais ne va pas l'ajouter à la liste:
Friend WithEvents Panel1 As System.Windows.Forms.Panel
Me.Panel1.Location = New System.Drawing.Point(0, 0)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(200, 100)
Me.Panel1.TabIndex = 0

Me.MyControl1.Items.Add(Me.Panel1)                      ' Ceci n'est pas ajouté !!!

Pourtant ça fonctionne très bien avec les autres contrôles "liste". Par exemple pour la ListView, le designer rajoute ceci:
Me.ListView1.Items.AddRange(New System.Windows.Forms.ListViewItem() {ListViewItem1, ListViewItem2, ListViewItem3})


Quelqu'un sait-il comment résoudre ce problème?



Remarque:
Si je ne déclare pas Items de MyControl Readonly, ça me fait :
- Hier soir, le designer m'a généré du drole de code qui produisait une "SyntaxError"
- Ajourd'hui, j'ai un message "Panel n'est pas marqué comme étant sérializable".
J'avais déjà fais un contrôle ayant une collection d'objet, et j'avais rencontré le même problème. Mais j'avais alors remarqué que si on ne déclarait pas la propriété Items Readonly et que les items qu'elle contenait était sérialisable en XML, les données était persistantes au moment du design (le designer stoquait les données dans les ressources de l'application). Seulement, aujourd'hui mes Items ne sont plus sérialisables en XML puisque il s'agit de contrôles.


mardi 1 juillet 2008 à 11:33:14 | Re : Persistance des items d'une collection au moment du design
mardi 1 juillet 2008 à 16:51:12 | Re : Persistance des items d'une collection au moment du design

Kevin.Ory

Mouais... pas vraiment de rapport, même si il est vrai que les contrôles ajoutés à la liste Controls sont  persistants (logique, c'est le fondement même du desiger de VS)

Mais comment cela se fait-il? Pourquoi Controls est-il persistant mais pas les autres listes?
mardi 1 juillet 2008 à 17:09:50 | Re : Persistance des items d'une collection au moment du design

Afyn

Il te faut rajouter une collection de Panel peut être ?

Essaye cette voie :

PublicClass MyControl
Inherits Control

Sub New()

Dim mCol AsNew List(OfPanel)

End Sub

EndClass

 

mardi 1 juillet 2008 à 17:27:49 | Re : Persistance des items d'une collection au moment du design

Kevin.Ory

C'est ce que j'ai, une collection de panels :
Private _Items As New List(Of Panel)

Ce que je veux, c'est rajouter des Panels à la collection au moment du design, au moment de l'exécution comme tu le montre il est clair qu'il y a aucun soucis...
mardi 1 juillet 2008 à 17:36:16 | Re : Persistance des items d'une collection au moment du design

Afyn

Ha désolé ... je sais pas trop

Peut être faut il developper une Function Add ou une Function

Default Property


Cette discussion est classée dans : design, collection, items, moment, panel1


Répondre à ce message

Sujets en rapport avec ce message

combobox (items ou collection) [ par planeur ] Je voudrais enregistrer dans un fichier les items ou la collection d'un combobox , et lire ce fichier pour remettre son contenu dans un combobox!Quelq ListBox et Items [ par dheroux ] Bonjour,Je travaille dans une ListBox. Je voudrais inclure un mot DIRECTEMENT DANS LA COLLECTION des items, de la même manière que si j'avais entré ce UserCrontrol + ArrayList [ par aKheNathOn ] Bonjour,J'ai dû loupper quelquechose - en vb6 j'avais les property bags, maintenant c'est directement par le fichier design qu'il construit l'interfac Sérialisation d'une form (au moment du design) [ par veler ] Salut,J'ai crée un concepteur de fenêtre, j'aimerais pouvoir obtenir une class (un bout de code quoi) à partir du contenu du concepteur (design surfac VB.NET: La collection Items (Add, Remove, Clear, ...) pour Control !!!!! [ par mehdi146 ] Bonjour,Je travaille sur la migration d'un logiciel de VB6 à VB.NET.Je résume le problème : En VB6, lorsque je déclare un contrôle dont je ne connais Création d'un controle type liste [ par Kevin.Ory ] Bonsoir,J'ai déjà créé de nombreux controles Windows (allant d'un color picker à une liste d'images, passant pas une progressbar) et tout fonctionne p Sérialiser un collection [ par fiko81 ] Bonjour à tous,Je voulais savoir s'il était possible de  serialiser une classe qui possède une collection ?Exemple :Par exemple : Public MustInherit C Excel VBA - Menu Items [ par JM247L ] Bonjour et que 2008 vous apporte ce que 2007 aura oublié de vous laisserJe développe un outil sous Excel qui sera utilisé dans plusieurs pays européen combobox (readonly ??) [ par Psycho24 ] bonjour à tous...j'ai un petit problème...je voudrais que mon combobox soit readonlyje fais:CboType.DropDownStyle = ComboBoxStyle.DropDownListça fait Isoler une chaine de caractère [ par alias666 ] Bonjour !J'ai un soucis concernant une chaine de caractère. Actuellement je parcèle un .csv via le split, à partir d'un moment je dois stocker des don


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,186 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales