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

Silverlight Discussion :

récupérer selectedItemChanged d'un treeview


Sujet :

Silverlight

  1. #1
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut récupérer selectedItemChanged d'un treeview
    Bonjour à tous,

    j'ai suivi les recommandations de ce post afin de récupérer l'élément cliqué d'un treeview.

    Or, ce treeview est composé d'éléments récupérés d'une base de données issus de deux tables différents. Mes objets sont de type "Niveau1" et "Niveau2".

    Le passEventArgsToCommand me permet de récupérer l'item retourné sous un type "Object" dont le NewValue représente tantôt un objet de type "Niveau1", tantôt un object de type "Niveau2".
    Je ne vois pas comment tester le type retourné et comment le "caster" en "Niveau1" ou "Niveau2".

    Merci d'avance,
    Frédéric

  2. #2
    Membre confirmé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Novembre 2011
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Novembre 2011
    Messages : 104
    Par défaut
    Je viens (enfin) de trouver ou était mon problème !

    J'utilisais "object" en tant que signaturede ma RelayCommand, ce qui rendait impossible la récupération de la propriété NewValue. Mais quel évènement utiliser ??

    Il suffit de créer un évènement "normal" en code behind afin d'en récupérer la signature. (On efface ensuite cet évènement, bien entendu).

    Dans mon cas, il s'agissait de la signature :

    RoutedPropertyChangedEventArgs<Object>

    J'ai ainsi pu créé une relayCommand (mvvmLigth) du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SelectedTreeViewChangedCommand = new RelayCommand<RoutedPropertyChangedEventArgs<Object>>(Item => { SelectedTreeviewChanged(Item); })
    Il ne me restait qu'à tester la "NewValue" de l'object retourné sur des propriétés préalablement créées.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
     private void SelectedTreeviewChanged(RoutedPropertyChangedEventArgs<Object> s)
                  {
                      try
                      {
                          SelectedNiveau2 = null;
                          SelectedNiveau2= s.NewValue as Niveau2;
                          if (SelectedNiveau2 != null)
                          {
                             //... mon code si la sélection est un item de niveau 2
     
                          }
                          else
                          {
                              SelectedNiveau1 = s.NewValue as Niveau1;
                              //...  mon code si c'est un item de niveau 1
     
                          }
                      }
    Bonne journée à tous!

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

Discussions similaires

  1. [Treeview]récupérer état initial
    Par rudbyman52 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 11/10/2007, 16h58
  2. récupérer l'id d'un noeud d'un treeview
    Par thewaterkidny dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 18/05/2007, 18h44
  3. Comment récupérer la scrollBar d'un treeview?
    Par mrrenard dans le forum Windows Forms
    Réponses: 1
    Dernier message: 24/01/2007, 13h40
  4. récupérer objet d'un treeview
    Par pavlacki dans le forum Delphi
    Réponses: 1
    Dernier message: 01/08/2006, 00h30
  5. Récupérer la sélection d'un TreeView
    Par nostroyo dans le forum Composants VCL
    Réponses: 6
    Dernier message: 16/06/2003, 12h30

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