2014-11-29 3 views
8

Se si guardano le immagini di anteprima in Esplora risorse, si noterà che hanno un'ombra esterna, questo effetto è associato al controllo ListView o Windows Explorer esegue una codifica aggiuntiva per ottenere questo effetto?Aggiungere ombra esterna a ListView (modalità Icona)?


Edit:

Così si è scoperto che Windows utilizza un altro controllo. Quindi la mia domanda ora è come posso aggiungere un'ombra esterna al "normale" ListView.

+0

Explorer non usa il controllo di visualizzazione dell'elenco di sistema –

+0

Usa un controllo a cui non abbiamo accesso? –

+1

Sì, sì: http://stackoverflow.com/questions/4089196/netuihwnd-and-directuihwnd –

risposta

0

Per una visualizzazione di elenco standard, è possibile utilizzare una tecnica denominata Disegno personalizzato (https://msdn.microsoft.com/en-us/library/windows/desktop/ff919569(v=vs.85).aspx).

Fondamentalmente, si chiede alla vista elenco di non disegnare i suoi elementi, ma invece di inviarti alcuni messaggi di finestra per poterli disegnare da soli. Questa è una tecnica molto flessibile ma anche problematica, perché è necessario gestire molte cose (come se un elemento è selezionato/disabilitato, font, colore, ecc.)