2009-06-15 2 views
5

Sto cercando di avere una lista di icone grandi (256x256) in una listview simile a Windows Vista Explorer, ma il controllo listview delle winforms non assomiglia al listview di vista.Vista Explorer vista cartella/cartella

Prima di scavare in WPF, qualcuno può dirmi se WPF listview può farlo?

Fondamentalmente ottenere questo (selezione solida blu):

alt text

invece di questo (selezione blu semi trasparente):

alt text http://i42.tinypic.com/2zzmfk7.png

Posso anche ottenere ciò utilizzando WinForms?

Btw io uso Windows 7.

+0

Il tuo secondo link è rotto –

+0

secondo link sta generando un errore 404 non trovato. –

+0

Convertire i collegamenti in immagini. –

risposta

5

Non sono sicuro di WPF, ma in WinForms è necessario applicare il tema "explorer" alla vista elenco per ottenere un'interfaccia utente simile a Explorer.

[DllImport("uxtheme.dll")] 
public extern static int SetWindowTheme(
    IntPtr hWnd, 
    [MarshalAs(UnmanagedType.LPWStr)] string pszSubAppName, 
    [MarshalAs(UnmanagedType.LPWStr)] string pszSubIdList); 

SetWindowTheme(listView.Handle, "explorer", null); 
1

Sì, è possibile raggiungere questo obiettivo in WPF; è possibile utilizzare un trigger come descritto nell'articolo MSDN: How to: Use Triggers to Style Selected Items in a ListView.

A complete sample è anche disponibile per il download.

Non sono sicuro se ciò è possibile in WinForms.

Aggiornamento: In risposta alla domanda nel commento qui sotto questo è sicuramente possibile. Ancora una volta c'è un campione online su MSDN intitolato ListView That Sorts Data Sample.

+0

Grazie Rick. Sai anche se è possibile avere la funzionalità esatta di explorer (per visualizzare i file) con filtri personalizzati, ecc.? –

+1

Joan, guarda l'aggiornamento sopra. –