J'ai créer un bouton afiin de supprimer toutes les ligne de ma ListBox : lb_imgARedim_list.
Rien a faire, il veut bien supprmier une ligne selectionnée mais pas plusieurs, comment faire ?
private void b_imgARedim_list_delLines_Click(object sender, EventArgs e)
{
int count = lb_imgARedim_list.SelectedItems.Count;
if (count == 1)
{
lb_imgARedim_list.Items.Remove(lb_imgARedim_list.SelectedItem);
}
else if (count > 1)
{
lb_imgARedim_list.Items.Remove(lb_imgARedim_list.SelectedItems);
/*
for (int i = 0; i < count ; i++)
{
lb_imgARedim_list.Items.Remove(lb_imgARedim_list.SelectedItems[i]);
}
Lorsque plusieurs éléments etaient selectionnés et que j'en supprimais un, le premier etait supprimé et la selection concervée. Il suffisait de répéter l'action autant de fois qu'il y a d'éléments sélectionnés.
int count = lb_imgARedim_list.SelectedItems.Count;
Ton if(count > 0) est inutile vu que le test est refait dans la boucle if.
De plus, je ne pense pas que cette solution soit la plus propre. Il est courament admis ce code, ou tu recupere d'abord les elements selectionnés, pour ensuite les supprimer préciesemment. :
ListBox.SelectedIndexCollection indices = lstMaListe.SelectedIndices;
for (int i = indices.Count - 1; i >= 0; i--)
{
lstMaListe.Items.RemoveAt(indices[i]);
}
Salut !
Merci pour ton aide ! Je vais faire avec ce que tu propose.
Mais j'ai une question. Tu ne vouloir utiliser ce control que si c'est pour un affichage ou un lecture, j'aimerais savoir ce que tu entends par là et qu'est ce que tu propose.
Moui, je ne sais pas pourquoi, je ne raffole pas trop de ce Control...
Moi j'utilise des ListView ou des Combo principalement, je trouve qu'ils sont visuellement plus pratique ... Mais bon, si tu as besoin d'une ListBox, utilise une ListBox