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

Windows Presentation Foundation Discussion :

Récupérer la ligne sélectionnée dans un ListView


Sujet :

Windows Presentation Foundation

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut Récupérer la ligne sélectionnée dans un ListView
    Bonjour,

    Je crée en C# un System.Windows.Controls.ListView qui est rempli par des données via un Binding.
    Ce ListView est ensuite rajouté dans ma fenêtre "windows.xaml".

    Ceci fonctionne correctement.

    La question est : comment récupérer une ligne sélectionnée dans le ListView ?
    Soit en double-click, soit avec une autre solution (peut-être en insérant un bouton sur chaque ligne si cela est possible).

    Pour la première solution, je sais coder l'appel de la fonction pour un double-click :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    listView.AddHandler(System.Windows.Controls.Control.MouseDoubleClickEvent, new RoutedEventHandler(HandleDoubleClick));
    Mais dans la fonction HandleDoubleClick(), je ne sais pas récupérer la ligne sélectionnée ni les informations qu'elle contient.

    Merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Tu es sûr que tu es en Silverlight là ?
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut Oui
    Oui j'ai mon fichier XAML et mon code associé en C#.

    Pourquoi ?

    Existe-t-il un forum plus approprié ?

  4. #4
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Citation Envoyé par altropus Voir le message
    Oui j'ai mon fichier XAML et mon code associé en C#.

    Pourquoi ?

    Existe-t-il un forum plus approprié ?
    Ben y'a pas de ListView en Silverlight.

    Tu utilises des composants tiers ?

    Tu es pas en WPF par hasard ?
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    System.Windows.Controls.ListView de l'assembly PresentationFramework, c'est dans WPF donc, non ?

  6. #6
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Citation Envoyé par altropus Voir le message
    System.Windows.Controls.ListView de l'assembly PresentationFramework, c'est dans WPF donc, non ?
    Oui je déplace.
    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  7. #7
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    Salut,

    tu as tout simplement la propriété SelectedItem (ou SelectedItems si tu fais de la sélection multiple) que tu peux ensuite caster pour avoir ton objet

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    TonObjet tonObjet = listView.SelectedItem as TonObjet;


    Autre solution :
    Le sender de ton évènement est ton listViewItem normalement et tu peux donc récupérer ton objet à partir du sender.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 19
    Points
    19
    Par défaut OK
    Effectivement cela fonctionne !

    Merci

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2010
    Messages : 21
    Points : 13
    Points
    13
    Par défaut
    Bonjour

    Afin d'éviter de faire un nouveau post identique je vais profiter de poser ma question ici

    J'ai donc le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    int id;
    var list = malistview.SelectedItem as maclasse;
    if (list!=null)
    {
     id = list.id;
    }
    Pourtant mon id est vide, alors que lorsque que je fais un débogage pas à pas mon selectItem possède bien les attributs sélectionne

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/07/2015, 01h58
  2. récupérer la ligne sélectionnée dans un GtkListStore
    Par katorps dans le forum GTK+ avec C & C++
    Réponses: 4
    Dernier message: 29/08/2012, 23h16
  3. Réponses: 14
    Dernier message: 07/07/2011, 17h44
  4. [XL-2003] Modifier une ligne sélectionné dans une listView
    Par monichou86 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/12/2009, 17h49
  5. Récupérer la ligne sélectionnée dans un ListBox
    Par jmjmjm dans le forum Composants VCL
    Réponses: 3
    Dernier message: 11/11/2005, 22h13

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