Bonjour,

Débutant en silverlight, sur un projet assez conséquent, je me pose pas mal de question sur la bonne méthode a utiliser pour créer mon objet graphique.

Ma question précise.
pour faire simple j'ai un objet chargé en code behind, on va prendre une liste de Personne où une personne à un nom,un prenom et un sexe (qui va prendre toute son importance.)

J'essaie de créer une liste XAML ou je vais afficher mes noms et prenoms.

Après une construction complète en C#, j'ai créer un template ou je bindais 2 textblock sur mes property nom et prenom. Jusque là ca allait, mais j'ai du aller plus loin dans ma liste : effet de survol, selection, et affichage différent selon le sexe.

je me suis basé sur l'article suivant : http://mark-dot-net.blogspot.com/200...ht-part-3.html

J'arrive a créer mon élément mais j'ai cassé le binding à ce moment là.

Plus j'avance et plus je pense ne pas avoir aborder mon problème par le bon bout.


mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
   <StackPanel Background="AliceBlue">
        <StackPanel.Resources>
            <Style TargetType="ListBoxItem" x:Key="lstItem">
                <Setter Property="Padding" Value="0"></Setter>
                <Setter Property="Foreground" Value="Red"></Setter>                
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="ListBoxItem">
                            <StackPanel Background="Aqua">
                                <TextBlock x:Name="prenom" Text="{Binding Path=prenom}"></TextBlock>
                                <TextBlock x:Name="nom" Text="{Binding Path=nom}"></TextBlock>
                                <ContentPresenter Content="{TemplateBinding Content}"   />
                            </StackPanel>
                        </ControlTemplate>                         
                    </Setter.Value>
                </Setter>
            </Style>
 
            <Style TargetType="ListBox" x:Key="lst">
                <Setter Property="Width" Value="180"></Setter>
                <Setter Property="Padding" Value="0"></Setter>
                <Setter Property="Margin" Value="0"></Setter>
                <Setter Property="ItemContainerStyle" Value="{StaticResource lstItem}"  />
                <Setter Property="ItemsSource" Value="iLstPersonne"></Setter>
             </Style>
 
        </StackPanel.Resources>
 
        <ListBox Style="{StaticResource lst}" Name="lstPersonneXaml">
 
        </ListBox>
 
 
    </StackPanel>
et en code behind je lie ma liste a ma liste d'objet C#.
ma liste est remplie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
lstPersonneXaml.ItemsSource = iLstPersonne;
Qu'en pensez vous ?

En fait je voudrais faire un peu la même chose que dans l'article cité en ajoutant un lien entre ma liste Xaml, et ma liste d'objet.