Domanda

Sto cercando di disegnare manualmente ListViewItems su un UserControl personalizzato. Il controllo di sé è un wrapper per un controllo ListView memorizzato come un membro privato della classe.

C'è un DrawListViewItemEventHandler attaccato per consentire disegno manuale per questi articoli, e per la maggior parte questo sembra funzionare. Il problema che ho è dove il testo per il ListViewItem (in modalità foto grande) è lungo.

Sto disegnando un rettangolo intorno al ListViewItem con vari temi, e poi ho misurare la dimensione del testo utilizzando Graphics.MeasureString () e disegnare manualmente il testo. Tuttavia quello che sto trovando è che il disegno verticale è a saltar a 2,5 righe di testo, perché la didascalia sta cadendo al di fuori dei VisibleClipBounds del contesto grafico che ho passato.

Mi sembra un po 'strana, ma non sono sicuro perché una cosa del genere dovesse accadere e non riesce a capire come aggirare il problema.

È stato utile?

Soluzione

Si potrebbe utilizzare visualizzazione affiancata e TileSize per darti abbastanza spazio per disegnare il testo.

Il ListView non può garantire di trarre tutto il suo testo: il testo potrebbe essere enorme

.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top