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 :

récupérer une valeur dans une listview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de Bast-Eo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut récupérer une valeur dans une listview
    bonjour voila j'ai beau me creser la tete je trouve pas la solution.

    j'ai un tableau de structure en mémoire qui se remplie grace à des enregistrement.A chaque enregistrement les information sont affichées dans une listview qui posséde les même colonnes que mon tableau
    Mon probléme est que je ne sait pas comment en sélectionnant dans ma listview(choix non multiple) supprimer ce même enregistrement de mon tableau. Sachant que pour les reconnaitre les enregistrements sont notés par l'indice de la place ou il sont dans le tableau.
    Le mieu seré que j'arrive à récupérer la valeur de la 1er colonne de l'élément sélectionné dans ma listview pour la stocker dans une variable afin de la comparer avec les indices qui sont dans mon tableau

    merci de votre aide d'avance
    je travaille sous vista avec visual studio 2005 standart

  2. #2
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Ce n'est pas très dur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                Dim ItemSelected As ListView.SelectedListViewItemCollection = L_Temp.SelectedItems
    Ensuite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim TexteDansLaPremiereColonne as String = ItemSelected(0).SubItems(0).Text
    Dim TexteDansLaDEUXIEMEColonne as String = ItemSelected(0).SubItems(1).Text
    Dim TexteDansLaTROISIEMEColonne as String = ItemSelected(0).SubItems(2).Text
    Avec ca, tu devrais t'en sortir
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  3. #3
    Membre averti Avatar de Bast-Eo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    merci Aspic j'ai testé tes lignes de code mais je comprend pas trop bien:
    L_temp correspond à quoi?
    VS me dit une erreur de référence null je vois pas ou le placer dans mon code.

    aprés d'autre essai je suis arriver a ce code ci :

    Dim ItemSelected As ListView.SelectedListViewItemCollection
    Dim vartemp As String

    'recuperation du numero(la colonne) de l'enregistrement selectionner dans la listview
    I = 0
    ItemSelected = liste.SelectedItems
    vartemp = ItemSelected(0).SubItems(0).Text

    'suppression de la listview
    Me.liste.Items(I).Remove(liste.SelectedItems) 'ca sa marche pas

    'effacement ds le tableau
    While tabdonnee(I).compte <> vartemp 'la valeur selectionnée recup de la listview
    I = I + 1
    End While

    tabdonnee(I).compte = ""
    tabdonnee(I).login = ""
    tabdonnee(I).pass = ""
    tabdonnee(I).type = ""
    tabdonnee(I).commentaire = ""

    je pense que la suppresion se fait correctement dans mon tableau mais parcontre dans ma listview je n'arrive pas à supprimer la ligne selectionné.
    merci d'avance pour d'éventuelle rectification et aide.

  4. #4
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    L_Temp c'est le nom de ta Listview !!
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  5. #5
    Membre averti Avatar de Bast-Eo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2008
    Messages : 27
    Par défaut
    voila j'ai trouve la solution :

    Dim II As Integer
    Dim vartemp As String

    'recuperation de l'indice de l'item selectionner ds la listview
    II = listview1.SelectedIndices(0)
    vartemp = listview1.Items(II).Text
    I = 0

    'recherche ds le tableau
    While tabbleau(I)<> vartemp
    I = I + 1
    End While

    'code d'action

    'suppression de la listview
    listview1.Items.RemoveAt(II)

    voila pour les prochain et merci à vous

  6. #6
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Deux petites optimisations :

    éviter d'utiliser II pour le nom des variables
    Utilise i += 1 pour l'incrémentation au lieu de i = i + 1
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. Récupérer la valeur d'une Checkbox dans une ListView
    Par LHsafae dans le forum Développement Mobile en Java
    Réponses: 1
    Dernier message: 21/02/2013, 13h14
  3. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  4. Récupérer la valeur d'une ligne dans une procédure stockée
    Par mobscene dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 07/12/2006, 19h29
  5. Réponses: 4
    Dernier message: 07/08/2006, 17h01

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