Sélection d'un Item via un évènement click.

PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 - 21 déc. 2005 à 12:31
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 21 déc. 2005 à 23:18
Bonjour.

J'ai parcouru en long en large et en travers ce forum, et il n'apparait apparemment qu'une solution pour sélectionner un item via un événement (et non pas via le code) qui semble être celui ci :



private
void ListItem1_SelectedIndexChange(Object Sender, EventArgs args)


{


ListView.SelectedListViewItemCollection Items = ListView1.SelectedItems;


MessageBox.Show(Items[0].SubItems[1].ToString);
// C'est un listView avec plusieurs colonnes
}

Bon soit.
(exemple tiré d'un site).

J'ai cependant le pb suivant : Je n'ai pas accès à 'SelectedListViewItemCollection'...
Je n'ai pas de bugs quand ça compile, mais du coup je n'ai pas non plus accès à une quelconque propriété de Items...

J'arrive donc à accéder aux valeurs sélectionnées en cours, mais bon je le fais un peu à l'aveuglette... Mais qd la syntaxe est fausse il me le signale...

Il y a pas une histoire d'implements à tout hasard ?
(si c le cas, serait il possible de détailler ? Désolé j'ai un peu de mal avec certaines notions en objet... pour le comprendre, faut que je le pratique...)

Merci pour votre aide.

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher

8 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
21 déc. 2005 à 14:05
tu veux sélectionner un item dans un listview ?

2 solutions :
- par l'index : lv.SelectedIndex = 5;
- par une référence : lv.SelectedItem = unItem;

Sébastien FERRAND
[MVP C#]
0
PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 1
21 déc. 2005 à 14:17
Heu...
Avec une listBox je dis ok
Mais avec une listView... Soit j'ai un problème sur ma machine,
soit SelectedIndex n'existe pas...

Et en ce qui concerne SelectedItems (au cas ou c'est de ça dont il s'agit) il me dit que (je cite)
'La propriété ou l'indexeur 'System.Windows.Forms.ListView.SelectedItems' ne peut pas être assigné -- il est en lecture seule'

Cela n'explique pas pourquoi je n'ai pas accès à l'attribut SelectedListViewItemCollection de mon objet ListView...

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
21 déc. 2005 à 14:35
hum... au temps pour moi...

pour sélectionner un item :
lv.SelectedItems.Add( monItem );

ou
lv.SelectedIndices.Add( monIndex );

Sébastien FERRAND
[MVP C#]
0
PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 1
21 déc. 2005 à 14:48
Heu...
.Add j'ai pas ni pour SelectedItems ni pour SelectedIndices...

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
21 déc. 2005 à 14:59
je suis d'accord pour SelectedItems, il ne contient pas de méthode .Add, mais SelectedIndices en a une ;)


listView1.SelectedIndices.Add(5);

http://msdn2.microsoft.com/en-us/library/system.windows.forms.listview.selectedindexcollection_members.aspx

Sébastien FERRAND
[MVP C#]
0
PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 1
21 déc. 2005 à 15:29
Donc je confirme, j'ai bien un pb...
Vu que le .Add je ne le vois pas apparaitre dans SelectedIndices...

D'ou cela pourrait il venir ?
Car j'ai déjà le souci avec ListView.SelectedListViewItemCollection que je ne vois pas apparaitre...

Space cette histoire non ?
Sachant que je bosse pas en 2.0 hein... je suis en 1.1

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher
0
PeTeRsLaStAr Messages postés 158 Date d'inscription samedi 22 juin 2002 Statut Membre Dernière intervention 27 juin 2015 1
21 déc. 2005 à 15:35
Précisions,
en effet je confirme ce qui a été dit...

Si j'ouvre un projet bateau, (bon on peut l'appeler différemment hein :) ) et que je tape ListView, tout s'affiche correctement...

Par contre, si j'ouvre mon projet en question, pouf ça marche pas...

Vous pourriez me dire : tu t'en fous, tu zappes, ou tu recommences tout... Nan nan, je préfèrerais une réponse qui me permettrait de solutionner le pb hein :)

Sachant aussi que c'est un projet que je trimballe régulièrement de chez moi au taf, et du taf à chez moi... Cela pourrait il peut être jouer ???

****************************************************
Il n'y a pas de pb sans solutions : il faut juste trouver le temps pour les chercher
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
21 déc. 2005 à 23:18
Salut,

La méthode Add en question est effectivement nouvelle pour le Framework 2.0.
Concernant la sélection il te suffit d'affecter true à la propriété Selected du ou des items que tu veux sélectionner.

Concernant l'invisibilité du type imbriqué, tu as peut être un problème avec l'Intellisense de VS, mais c'est bizarre que ça soit localisé sur un projet et non pas généralisé... Tu vois les autres types imbriqués de ListView ?

/*
coq
MVP Visual C#
*/
0
Rejoignez-nous