IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

détection de cochage ou décochage dans une listview


Sujet :

VB.NET

  1. #1
    Membre habitué Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 214
    Points : 157
    Points
    157
    Par défaut détection de cochage ou décochage dans une listview
    Bonjour à tous

    J'ai une ListView avec des cases à cocher.
    Comment détecter le cochage ou décochage en temps réel et déclencher une action à chaque modif (ex: changer la couleur de la ligne cochée)

  2. #2
    Membre expert
    Avatar de FailMan
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2010
    Messages
    1 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 602
    Points : 3 917
    Points
    3 917
    Par défaut
    Ceci n'est pas compliqué.

    Tu écris une procédure, et tu gères dans le Handles un événement de type CheckBox1.Checked.

    Je n'ai pas la syntaxe exacte en mémoire mais cela ressemble furieusement à ceci. Tu peux placer plusieurs entités et évenements dans la clause Handles de ta procédure

    EDIT, j'ai pris le temps d'ouvrir VS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Public Class Form1
     
        Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox2.CheckedChanged
            ''TON CODE ICI
        End Sub
    End Class
    Une erreur fréquente que les gens font quand ils tentent de réaliser quelque chose à l'épreuve des imbéciles est de sous-estimer l'ingéniosité de ceux-ci. - Douglas Adams

  3. #3
    Membre habitué Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 214
    Points : 157
    Points
    157
    Par défaut
    merci pour cette aide rapide
    mais je suis débutant et je ne sais pas comment adapter ton code sachant que le nombre de lignes dans mon ListView est variable...
    et je dois surveiller toutes les lignes (de 0 a r)

    ListView1.Items(r)

  4. #4
    Membre habitué Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 214
    Points : 157
    Points
    157
    Par défaut
    peut être en utilisant une classe ?
    mais ça se complique pour moi

  5. #5
    Membre expert
    Avatar de FailMan
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2010
    Messages
    1 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 602
    Points : 3 917
    Points
    3 917
    Par défaut
    Citation Envoyé par Oh!Tofocus Voir le message
    merci pour cette aide rapide
    mais je suis débutant et je ne sais pas comment adapter ton code sachant que le nombre de lignes dans mon ListView est variable...
    et je dois surveiller toutes les lignes (de 0 a r)

    ListView1.Items(r)
    Si ton nombre de lignes dans ton ListView est variable, dans ce cas il suffit de récupérer le nombre d'items présents dedans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Dim NbVarLV as Integer = 0 ''nbre de valeurs dans le listview
    NbVarLV = ListView1.Items.Count ''je renseigne cette valeur
     
    For i = 0 to NbVarLV -1 
    If CheckBox1.Checked = True then ''si la case est cochée (exemple)
       ListView1.Item(i) = 1
    else ''sinon
       ListView1.Item(i) = 0
     
    Next
    ''Suite des instructions
    Je retire 1 à NbVarLV puisque l'index de tableaux et de collections en .NET commence à zéro. Si tu as donc 35 variables dans ton ListView, la dernière portera l'index 34. Si tu ne décrémentes pas de un, tu auras une jolie exception.

    Je l'ai fait de mémoire, il me semble que c'est comme ça que ça se présente. Si tu m'en dis un peu plus, je pourrais t'aider un peu mieux, là ça reste très générique

    Pas besoin de classe, ne t'en fais pas !
    Une erreur fréquente que les gens font quand ils tentent de réaliser quelque chose à l'épreuve des imbéciles est de sous-estimer l'ingéniosité de ceux-ci. - Douglas Adams

  6. #6
    Membre habitué Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 214
    Points : 157
    Points
    157
    Par défaut
    OK jusque la j'avais plus ou moins trouvé la même solution
    mais cette routine ne s'execute que quand on la déclanche volontairement.

    Ce que je voudrais c'est quelle soit déclanchée automatiquement à chaques cochages de case.
    ce qui n'est pas le cas.

    J'ai essaye avec la detection de changement d'item selectionné dans la LIstView mais ça ne marche pas car le cochage ne change pas l'item selectionné.
    Je cherche "juste" un moyen de surveiller si l'utilisateur coche ou décoche un case dans la ListView.....

  7. #7
    Membre expert
    Avatar de FailMan
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2010
    Messages
    1 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 602
    Points : 3 917
    Points
    3 917
    Par défaut
    Si tu mets tes éléments dans une procédure comme je t'ai montré plus haut, ça sera géré automatiquement...

    J'arrive pas trop à concevoir le souci, est-ce que tu peux m'en dire un peu plus, parce que là, ça reste flou ...
    Une erreur fréquente que les gens font quand ils tentent de réaliser quelque chose à l'épreuve des imbéciles est de sous-estimer l'ingéniosité de ceux-ci. - Douglas Adams

  8. #8
    Membre habitué Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    214
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 214
    Points : 157
    Points
    157
    Par défaut
    Merci beaucoup JohnPetrucci de te pencher sur mon problème

    A force de tâtonnement j'ai fini part trouver la solution à mon problème.
    il suffit d'utiliser la méthode :

    qui détecte le cochage d'une case sur unr ligne de ListView

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lister les processus et les PID dans une listview .
    Par maxoudu328 dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 16/10/2005, 16h03
  2. [c#]Suppresion dans une listview
    Par onouiri dans le forum Windows Forms
    Réponses: 3
    Dernier message: 21/04/2005, 13h00
  3. Afficher un Hint dans une ListView
    Par Larion dans le forum C++Builder
    Réponses: 13
    Dernier message: 13/03/2005, 13h45
  4. [VB.NET] Objet .Tag dans une ListView
    Par Lois dans le forum Windows Forms
    Réponses: 7
    Dernier message: 12/10/2004, 16h35
  5. [VB6] Supprimer un enregistrement dans une ListView ??
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/11/2002, 09h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo