Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] User Control , drawItem o magari esiste una soluzione piu' veloce ?
Forum - C# / VB.NET - [VB.NET] User Control , drawItem o magari esiste una soluzione piu' veloce ?

Avatar
masterz (Normal User)
Newbie


Messaggi: 8
Iscritto: 28/02/2011

Segnala al moderatore
Postato alle 23:39
Domenica, 04/05/2014
Salve ragazzi , sicuramente esiste una via piu' semplice per quello che devo fare ,
ho un frame nella parte sinistra della mia applicazione ,
in questo frame devo visualizzare diverse caselle in cui appaiono alcune informazioni ,

, testo colorato e qualche piccola GIF , inoltre
-devo essere in grado di utilizzare eventi tipo click , mouseon , etc...
-non so a priori quante caselle occorrono e devo crearle in runtime
-deve esserci una scrollbar

pensavo di modificare una listbox e utilizzando drawITEM andare a modificare di volta in volta quello che devo visualizzare,

pero' poi mi trovo con una serie di problemi quali , come andare a modificare di volta in volta il testo all'interno di ogni cella utilizzando i metodi standart del controllo ?


Vi chiedo gentilmente se potreste darmi qualche idea!

PM Quote
Avatar
mattia1481 (Member)
Pro


Messaggi: 84
Iscritto: 03/11/2008

Segnala al moderatore
Postato alle 14:50
Lunedì, 05/05/2014
A mio avviso l'utilizzo della classe ListBox attraverso la funzione OnDrawItem è la soluzione più corretta per il tuo scopo, i tuoi dubbi su come indirizzare correttamente gli input delle periferiche agli items del ListBox li risolvi attraverso l'uso delle funzioni GetItemRectangle, IndexFromPoint, SelectedIndex etc.

Diversamente puoi provare a sviluppare un controllo custom che definisca il tipo di item e popolare con una matrice di questi ultimi un controllo FlowLayoutPanel con proprietà FlowDirection impostata su TopDown, creando così un controllo simile ad un ListBox.

Buon lavoro.

Mattia.

PM Quote