Tout d'abord, bonjour à tous(tes).
Je développe un petit programme dans lequel j'ai créé mes propres UserControl et notamment un contrôle de type "expander" qui se déplie et se replie (cf images ci-dessous).
Mon U.C. collapsed:
Mon U.C. expanded:
Mon User Control fonctionne comme je le désire, cependant j'aimerais en disposer dans une liste verticale dynamique (régie par des boutons "+", "-", ...).
J'ai d'abord cherché un contrôle correspondant au StackPanel d'ASP .NET, mais il semblerait que je ne puisse pas trouver ça en VB .NET.
Tant pis, après avoir tenté une solution maison à base de FlowLayoutPanel puis de TableLayoutPanel.
J'ai réussi à faire un bricolage pas terrible et qui ne me convenait pas (fonctionne, mais pas fonctionnel à l'utilisation et pas optimum).
Je me suis donc rabattu sur le ListBox (ici, ajout d'un UserControl du même type que celui sur les images).
Or si mes éléments (= mes contrôles utilisateurs que j'ai précédemment créés) s'ajoutent correctement dans la collection des items du ListBox, l'affichage ne suit pas.
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 ' Ajoute un nouveau panneau d'option numériques repliable s'il n'existe pas déjà Private Function addANumberOption(ByVal panneauOption As cu_BoiteRepliable) As Boolean ' Vérifie que l'élément à entrer n'existe pas déjà For Each optionNombre As cu_BoiteRepliable In Me.LB_options.Controls If optionNombre.Titre.ToLower.Equals(panneauOption.Titre.ToLower) Then Return False End If Next ' Crée un nouveau panneau repliable panneauOption.addControl(New cu_nombre) ' Ajoute le panneau dans la liste Me.LB_options.Items.Add(panneauOption) Return True End Function
Est-il possible d'afficher mon contrôle entièrement (c'est-à-dire pas uniquement une propriété ou un ensemble de propriétés, mais tel que je le vois) ou alors dois-je changer de méthode et trouver une autre solution?
Merci par avance pour vos réponses.
Bonne journée/soirée, cordialement.
Furior
Partager