2010-03-06 6 views
0

j'ai donc une zone de liste, et voici ce que im essayant de acheive:contrôle CustomListbox, comment faire les articles ont une coutume les sentir dans C# (WinForms)

  1. ont le style de classe ajout/sélection/Enlever un peu comme un TreeView
  2. Les articles ListBox ont plus d'une étiquette attachée aux différents côtés de l'espace (par exemple, l'article serait plus épais, et serait assez grand pour deux étiquettes l'une sur l'autre, et peut-être une autre sur le côté)
  3. lorsque sélectionné/non sélectionné, les éléments auront une superposition d'image transparente

Ce que je dois savoir:

  1. Y at-il un contrôle (gratuit/opensrouce) que cela peut être accoplish easliy ce
  2. Si No 1, comment dois-je commencer à créer cette (où commencer, ce qu'il faut éviter, etc.)
+0

Oh les gars communs! Ne me dites pas que personne ne l'a déjà fait auparavant. – caesay

+0

Il y a un contrôle de 3-ème partie qui a fait cela. Malheureusement, ce n'est pas gratuit. –

Répondre

0

Je fini par utiliser un contrôle utilisateur et créé les enfants qui se dessinent, et puis juste les inclus dans mon listbox, donc je l'ai eu à travailler! merci de toute façon les gars

+0

Comment avez-vous fait cela exactement? – Dozer789

+0

Je ne me souviens pas exactement comment je l'ai fait spécifiquement. C'était il y a 4 ans. Fondamentalement, le problème que j'avais, c'est que le contrôle de la liste était celui qui dessine les enfants et il était limité dans la fonctionnalité. J'ai fini par ré-implémenter la classe listbox avec un usercontrol, et les enfants listbox étaient une classe personnalisée qui implémentait des méthodes comme "MeasureSize" "Draw (Graphics g, Rectangle r)" ou quelque chose comme ça, et ensuite le contrôle faisait son propre méthode de tirage. Ce n'était pas la façon la plus élégante mais ça a bien fonctionné – caesay

Questions connexes