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 Forms Discussion :

Treeview et Listview bonne méthode ?


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Par défaut Treeview et Listview bonne méthode ?
    Je vous explique mon questionnement. Avant j'avais sa :

    Une treeview + un datagridview + un dataset ( ou il y a les données a afficher )

    + un évenement qui récup le noeud de la treeview et qui affiche la bonne table dans le datagridview

    Mais apparament le listview est plus approprié a ce que je veus faire, j'aimerais donc remplacer le datagridview par un listview. Le problème c'est que je ne connais pas du tous se control et qu'il n'y a pas beaucoup de tutorial dessus.

    J'aimerais donc conserver mon dataset. Y-a t-il directement un source a appliquer a la listeview du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    listview1.DataSource=dataset[etetete];
    Où dois-je récupérer le noeud de la treeview et a chaque fois crée les items qui vont bien depuis mon dataset ? ce qui me paraît un peu lourd quand même non ?

  2. #2
    Membre éclairé Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Par défaut
    J'ai un autre soucis:

    J'aimerais récupérer le niveau du noeud sur lequel le user clique et donc le nom des noeuds enfants :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     void treeView1_Click(object sender, EventArgs e)
            {
     
                string name = (sender as TreeView).SelectedNode.Text;
                int num = (sender as TreeView).SelectedNode.Level;
            }
    Mais je n'arrive pas a récuperer le niveau du noeud

  3. #3
    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
    Essaye avec ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    TreeNode NoeudsSelectionner = TreeView1.SelectedNode;
    int Level = NoeudsSelectionner.Level;
    Ca marche chez moi
    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 !

  4. #4
    Membre éclairé Avatar de Luffy49
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 399
    Par défaut
    Oui seulement voilà ce que j'ai fait :

    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
    20
    21
    22
    23
    24
    TreeNode NoeudsSelectionner = treeView1.SelectedNode;
                int Level = NoeudsSelectionner.Level;
     
                switch (Level)
                {
                    case 0:
                        foreach (TreeNode tn in treeView1.Nodes[Level].Nodes)
                            {
                                MessageBox.Show(tn.Text);
     
                            }
                            break;
     
                    case 1:
                            foreach (TreeNode tn in treeView1.Nodes[0].Nodes[Level].Nodes)
                            {
                                MessageBox.Show(tn.Text);
     
                            }
                            break;
     
                    case 2:
                            MessageBox.Show("Affichage list view");
                            break;
    Seul problème lorsque l'on a une arborescence comme ceci :




    Lorsque l'utilisateur clique sur requête sauvegarder son niveau est 1 donc il affiche le nom des noeud de niveau 2 alors que je voudrais qu'il m'affiche le contenu de requettes sauvegarde Existe t'il une méthode pour vois si un noeud a des enfants ?

  5. #5
    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
    Oui regarde tu coté des propriétés NextNode, LastNode et FirstNode
    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 !

  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
    C'est pas ca que tu veux faire ?
    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
    TreeNode NoeudsSelectionner = TreeView1.SelectedNode;
    int Level = NoeudsSelectionner.Level;
    switch (Level) {
        case 0:
            foreach (TreeNode Tn in NoeudsSelectionner.Nodes) {
                MsgBox(Tn.Text);
            }
            break;
        case 1:
            foreach (TreeNode Tn in NoeudsSelectionner.Nodes) {
                MsgBox(Tn.Text);
            }
            break;
        case 2:
            break;
    }
    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: 2
    Dernier message: 22/08/2006, 08h28
  2. Réponses: 8
    Dernier message: 27/02/2006, 14h28
  3. [EJB2.1 Entity] [CMP] Est-ce la bonne méthode ?
    Par stailer dans le forum Java EE
    Réponses: 8
    Dernier message: 20/06/2004, 19h42
  4. icon dans treeview ou listview
    Par Sebinou dans le forum C++Builder
    Réponses: 12
    Dernier message: 31/03/2004, 00h29

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