2013-07-18 15 views
5

Come simulare una vista tessera per un ListView in WPF?Visualizzazione tessere per ListView in WPf

enter image description here

cercavo Nell'esempio mostrato here. Ma non riesco ad arrivare alla soluzione giusta ... Ma non voglio usare quella soluzione perché ho è troppo specifico. Quindi, come sarà la strada per conseguirlo?

EDIT: sto provando adesso e sembra funzionare ...

<ListBox ItemsSource="{Binding Path=ListObservableUsers, ElementName=AdminWindow}"> 
     <ListBox.ItemTemplate> 
      <DataTemplate> 
       <StackPanel Orientation="Vertical"> 
        <Image Source="{Binding Path=Picture}"></Image> 
        <Label Content="{Binding Path=Dni}"></Label> 
       </StackPanel> 
      </DataTemplate> 
     </ListBox.ItemTemplate> 
    </ListBox> 

Qualora la ElementName=AdminWindow viene da <Window .... x:Name="AdminWindow"

e ho creato il mio ObservableCollection<MyUser>

public class MyUser 
{ 
    public MyUser(int id, string dni, Bitmap picture) 
    { 
     Id = id; 
     Dni = dni; 
     Image img = new Image(); 
     FPhiMultipleSources.FromBitmapImage(img, picture); 
     Picture = img.Source; 
    } 

    public int Id { get; set; } 
    public string Dni { get; set; } 
    public ImageSource Picture { get; set; } 
} 

... 
public UCAdminMain() 
public UCAdminMain() 
{ 
    ListObservableUsers = new ObservableCollection<MyUser>(); 

    InitializeComponent(); 
    uiCurrent = SynchronizationContext.Current; 

    // Create users to add with its image 
    .... 
    ListObservableUsers.Add(...); 
} 

E ora sto provando a metterli all'interno di un pannello di wrap. Senza fortuna in questo momento ... qualche idea?

+2

Quello non basta ... Non vi daremo una soluzione completa per il vostro problema, che btw in realtà non lo sappiamo. Mostraci cosa hai provato, cosa non funziona in un piccolo esempio di codice compilabile e cerchiamo di aiutarti e indirizzarti nella giusta direzione. – dowhilefor

+0

Il fatto è che non voglio usare quel codice, perché penso che sia un po 'specifico ... Ho bisogno di sapere il modo generico di cambiarlo. – Sonhja

+0

Che cosa è esattamente specifico a riguardo? La bellezza di WPF è di tutti i framework che conosco, che è molto facile da modificare nell'uso e nell'aspetto. Che ne dici di iniziare con quel codice, perché usare ListView e Using the TileView è l'inizio per fare le tue regolazioni. Ad esempio, lo usiamo anche nella nostra applicazione con ottimi risultati. – dowhilefor

risposta

0

Link here mi ha guidato alla soluzione corretta.

Facile!

2

Un ItemsControl con WrapPanel come ItemsContainer probabilmente si adatta bene a ciò che si sta tentando di fare.

+0

Questo ha più o meno risolto il mio problema. :) Ora vado a controllare come inserire l'immagine! – Sonhja

2
<ListBox.ItemsPanel> 
      <ItemsPanelTemplate> 
       <WrapPanel /> 
      </ItemsPanelTemplate> 
     </ListBox.ItemsPanel> 

tenta di utilizzare una WrapPanel

Problemi correlati