bonjour a tous,

j'ai cherché en vain une propriété "clickitem" sur les listbox en wpf.

en effet je veux créer un évènement lors du click sur un des items de la listbox, pour récupérer des données dans un datatable mais je n'ai pas réussi.

j'ai donc utilisé la propriété "SelectionChanged", ce qui marche si on click a chaque fois sur un item différents mais par contre si je click deux fois d'affilé sur un même item et bien ça ne déclenche pas l'évènement (normal vu que la propiété "selectionChanged" n'est pas modifiée)

Donc ma question est comment declencher un événement lors d'un click sur un item de la listbox pour s'affranchir de ce soucis?

apprarement on peut faire quelque chose avec un EventSetter sur tous les ListBoxItem pour permettre un MouseLeftButtonDown sur les items, mais je n'ai rien compris.

je suis debutant en wpf et je vois pas comment mettre cela en oeuvre...

voici ma listbox:

xaml:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<ListBox
            Name="ListParam"
            HorizontalAlignment="Left" 
            Margin="35,96,0,140" 
            Width="266" 
            SelectionChanged="ListParam_SelectionChanged" 
 
            />
remplissage de la listbox:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
public void frmParam_load()
        {
            DB.DBDataSetTableAdapters.ParamDBTableAdapter ParamDBTableadapter = new ParamDBTableAdapter();
            ParamDB = ParamDBTableadapter.GetData();
            ListParam.ItemsSource = ParamDB;
            ListParam.DisplayMemberPath = "Nom_ParamDB";
l'evenement ListParam_SelectionChanged
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
 
index = ListParam.SelectedIndex;
            if (index != -1)
            {
                TxtboxParam.Text = ParamDB.Rows[index]["Nom_ParamDB"].ToString();
                TxtboxAppliHit.Text = ParamDB.Rows[index]["AppliHit_ParamDB"].ToString();
                TxtboxAppliAu.Text = ParamDB.Rows[index]["AppliAU_ParamDB"].ToString();
                CbboxVR1.SelectedValue = ParamDB.Rows[index]["VR1_ParamDB"].ToString();
                CbboxVR2.SelectedValue = ParamDB.Rows[index]["VR2_ParamDB"].ToString();
            }
            else
            {
                TxtboxParam.Text = "";
                TxtboxAppliHit.Text ="";
                TxtboxAppliAu.Text = "";
                CbboxVR1.SelectedValue = "";
                CbboxVR2.SelectedValue = "";
            }
merci et joyeux noel a tous