[WPF] Detection de click défectueux

cs_Kite37 Messages postés 242 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 17 janvier 2018 - 8 sept. 2009 à 22:11
Jmix90 Messages postés 11 Date d'inscription mercredi 29 mai 2002 Statut Membre Dernière intervention 23 mars 2010 - 1 mars 2010 à 00:21
Bonjour,

Dans le cadre d'une application, je suis amené a faire du databinding multi-niveaux sur un treeview.

Le problème est le suivant :
Lorsque que je clic sur les items une fois le treeview chargé, aucun événement de click n'est généré (OnMouseDown, Treeview_MouseDown ...).
Lorsque la liste est vide, ou que je ne clique pas sur un item, cela marche cependant.

Quelqu'un saurait comment récupérer les clicks sur les items de sorte a les traiter dans l'event handler attaché au treeview?

Voici le code que j'utilise :

<TreeView ClipToBounds="True" Grid.Row="2" x:Name="tvListe" ItemsSource="{Binding Path=ColCarte}" >
<TreeView.ItemTemplate>
<DataTemplate>
<TreeViewItem Header="{Binding Path=Nom}" ItemsSource="{Binding Path=ColCompetence}">
<TreeViewItem.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding Path=Type}">
: <TextBlock Text="{Binding Path=Valeur}"/>
</TextBlock>
</Grid>
</DataTemplate>
</TreeViewItem.ItemTemplate>

</TreeViewItem>
</DataTemplate>
</TreeView.ItemTemplate>
</TreeView>

le premier niveau de treeviewItem affiche le nom d'un objet contenu dans une collection, le second niveau le type d'un second objet contenu lui même contenu dans une collection au sein du premier, le tout via des dependency properties.

Merci d'avance, en espérant avoir été clair.

Cordialement

KiTe.


-----------------------------------------


Ce qui nous tue pas nous rend plus fort,
Mais ce qui nous tue nous rend plus mort.

1 réponse

Jmix90 Messages postés 11 Date d'inscription mercredi 29 mai 2002 Statut Membre Dernière intervention 23 mars 2010
1 mars 2010 à 00:21
Bonsoir,

Ce bout de code devrait faire ton bonheur ( il faut le placer dans le style de ton TreeView) :
<Style TargetType="{x:Type TreeViewItem}">
<EventSetter Event="PreviewMouseDown" Handler="TreeViewItem_PreviewMouseDown" />
</Style>




Jmix 90
http://blog.lexique-du-net.com
0
Rejoignez-nous