ListView maj

Signaler
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006
-
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006
-
bonjour
j'utilise un listview connecté a une base de données sql. sur ce lv j'ai un contextmenu qui me permet d'ouvrir des forms pour ajouter,modifier ou supprimer des donnees du lv.
les maj fonctionnent sauf qu ej'aimerai que mon lv se mette à jour à l'ecran apres avoir clique sur le bouton des form (ajouter,supp ou modifier)
et que si je clique dans une zone vide de mon lv puis sur modifier par exemple j'ai une messagebox au lieu de l'exception.
j'utilise un dataset,dataadapter, et je compare le num de la bd avec le tag du lv.
merci pour vos lumiéres.

6 réponses

Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Statut
Membre
Dernière intervention
27 novembre 2007

Si tu utilises la propriété "ContextMenu". Le menu contextuel s'affiche
qu'il y ait une sélection ou non. Il t'appartient donc de t'inscrire
sur l'événement "Popup" pour éventuellement supprimer ou désactiver un
élément de menu.

Une autre méthode consiste à ne pas utiliser la propriété "ContextMenu"
et utiliser l'événement "MouseUp" pour afficher ce menu. Tu peux ainsi
décider de ne pas afficher ce menu s'il n'y a aucune sélection.



Ensuite, avant l'affichage d'une de tes fenêtres (ajouter, suppr...),
tu peux passer le "ListViewItem" sélectionné. Ainsi avant la fermeture,
la fenêtre peut effectuer une mise à jour.


-- AOGie --
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006

Salut
je n'ai pas de prob avec le menu.
je demarre avec un lv.Par un clic droit j'affiche un menu avec l'option ajouter qui m'ouvre un form où je peux saisir des données.Quand je clique sur le bouton ajouter du form, ma base est mise à jour en arriere plan, mais je voudrai que mon lv (toujours à l'écran) soit mis à jour aussi en "temps reel",sinon je dois fermer ce lv et le reouvrir pour constater l'ajout.
Messages postés
108
Date d'inscription
vendredi 11 juillet 2003
Statut
Membre
Dernière intervention
27 novembre 2007

Au lieu que ta fenêtre s'occupe de la mise à jour en arrière-plan. Elle
peut appeler une méthode sur la fenêtre parente (lui passer une
référence dessus avant affichage) avec tous les arguments nécessaires.
La fenêtre parente met ainsi à jour la base de données et le ListView
dans la foulée.

-- AOGie --
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006

salut
c'est exactement ce que j'aimerai faire ! mais je débute .......
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
54
Salut,
Hum, pour que le listView se mette à jour, peut-être que tu pourrais jeter un oeil sur une de mes sources, c'est peut-être ce que tu recherches. http://www.csharp.fr/code.aspx?ID=26735
Pour l'exception, bien il suffit de faire try-catch et de faire une MessageBox dans le catch, non ?

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
Messages postés
23
Date d'inscription
samedi 28 juin 2003
Statut
Membre
Dernière intervention
20 février 2006

Merci
j'avais la réponse sous les yeux, il suffisait de regarder au bon endroit.