comment puis-je sélectionner cinq éléments dans le seul clic sur la liste? si je clique sur un élément, je veux juste +2 et -2 de l'index sélectionné. mon simple clic doit donc sélectionner cinq éléments dans la liste. Utilisez C# (WPF).mulit select listbox dans wpf
Répondre
Je ne suis pas sûr de ce que vous voulez faire exactement, mais en essayant. =)
Jetez un oeil à l'événement Click de la ListBox. Vous pouvez faire n'importe quoi, y compris choisir cinq articles de votre choix. Vous pouvez le faire comme ça (non testé, mais vous donne une idée):
int sindex = listBox1.SelectedIndex;
listBox1.SelectedItems.Clear();
for(int i = Math.Max(sindex - 2, 0); i < Math.Min(sindex + 2, listBox1.Items.Count()), i++)
{
listBox1.SelectedItems.Add(listBox1.Items[i]);
}
Une autre chose allait mettre le SelectionMode à multiples ou étendues. Cela entraîne-t-il le comportement que vous recherchez?
je vérifie avec le multiple et étendre, il me permet de sélectionner plusieurs éléments, mais son pas comme je l'ai dit, si je clique sur des éléments, je veux juste +2 et -2 de l'index sélectionné. donc mon seul clic doit sélectionner cinq éléments dans la liste .. je pense que vous pouvez me comprendre maintenant ?? tu as une idée ??? –
@deep: Voir mes réponses modifiées. – Jens
un coup d'oeil à l'événement selectionChanged, et l'index de l'élément et de le rendre +2 et -2 je l'ai essayé comme ça et il fonctionne sélectionné:
void list_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
int idx = list.SelectedIndex;
int startIdx = idx - 2;
int endIdx = idx + 2;
if (startIdx < 0)
{
startIdx = 0;
}
if (endIdx >= list.Items.Count)
{
endIdx = list.Items.Count-1;
}
for (int i = startIdx; i <= endIdx; i++)
{
if (i != idx)
{
list.SelectedItems.Add(list.Items[i]);
}
}
}
un problème avec ce code est vous pouvez toujours utiliser ctrl pour sélectionner un autre élément afin qu'il augmente le nombre d'éléments sélectionnés
- 1. SetBinding for Listbox dans WPF
- 2. WPF, rien n'apparaît dans ListBox
- 3. WPF ListBox + Binding + IDataErrorInfo =?
- 4. Filtré WPF ListBox
- 5. Modifable WPF ListBox
- 6. WPF ListBox Selection Couleur
- 7. WPF Databound RadioButton ListBox
- 8. Listbox et scrollviewer wpf
- 9. Listbox MousedoubleCliquez sur WPF
- 10. WPF ListBox Binding ItemsSource
- 11. Strange WPF ListBox Behavior
- 12. Événements WPF Listbox + Expander
- 13. WPF ListBox databinding
- 14. WPF, ObservableCollection et listbox
- 15. WPF listbox empty datatemplate
- 16. WPF DisplayMemeberPath sur ListBox
- 17. WPF: ListBox désélectionnant
- 18. WPF ListBox OnScroll Event
- 19. WPF ListBox Largeur/MaxWidth
- 20. WPF Databound Listbox
- 21. WPF ListBox Databinding
- 22. WPF: Listbox, valueconverter
- 23. WPF Listbox ne redessinant
- 24. Listbox selecteditem problem wpf
- 25. WPF-ListBox-MultiBind Howto
- 26. Valeur de mulit et procédures stockées
- 27. ListBox, VirtualizingStackPanel et défilement lisse dans WPF
- 28. Problème avec le graphique WPF dans ListBox
- 29. wpf-DragDrop dans une listbox avec groupstyle
- 30. WPF Liaison de données Erreur dans ListBox
quel code avez-vous essayé jusqu'à présent? –
J'essaye juste de boucler une fonction dans le clic de souris comme ceci .. int selitem = listBox1.SelectedIndex; int i = selitem; pour (i = 0; i <= (selitem + 5); i ++) { listBox1.SelectedIndex = i; } Mais cela ne fonctionne pas, il sélectionne le dernier élément seulement, je mets à SelectionMode à plusieurs, mais même je ne peux pas le faire fonctionner –