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] Selectionner un "fils"


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 60
    Par défaut [TreeView] Selectionner un "fils"
    Voila mon probleme, j'utilise un treeview avec deux "dossiers"

    >Projet
    --> Faits
    --> Regles

    Durant l'execution je peux rajouter des faits/regles en faisant click droit sur Faits/Regles. Du coup mon treeview ressemble a cela:

    >Projet
    --> Faits
    -----> NewFait1
    -----> NewFait2
    --> Regle

    J'aimerais pouvoir afficher, en cliquant sur NewFait1 par exemple le contenu de ce "Fait". Mais je n'arrive pas a recuperer le nom du "noeud" selectionné.

    Voila mon code:

    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
    private void treeView1_MouseClick(object sender, MouseEventArgs e)
            {
                Point pt = new Point(e.X, e.Y);
                //treeView1.PointToClient(pt);                   // Ca sert a quoi????????????
                //TreeNode Node = treeView1.GetNodeAt(pt);
                TreeNode Node = treeView1.SelectedNode;
     
                if (e.Button == MouseButtons.Right)
                {
                    //Point pt = new Point(e.X, e.Y);
                    //treeView1.PointToClient(pt);
                    //TreeNode Node = treeView1.GetNodeAt(pt);
                    if (Node.Name == "Faits")
                    {
                        contextMenuFaits.Show(MousePosition.X, MousePosition.Y);
                    }
                }
                else
                {
                    // Probleme Node.Name = NULL car il n'arrive pas a "trouver" la node...    
                    AfficherFait(Node.Name);
                }
    Bon comme vous pouvez le voir il y a pas mal de commentaire, tout le code n'est pas de moi.
    Mais bref, par exemple si je clique sur le noeud "Faits" en pas a pas je peux voir que j'ai bien dans Node.Name "Faits". Mais si je clique sur le noeud "NewFait1" ça ne fonctionne pas...

    Donc j'avoue ne pas trop savoir comment faire, apparement il y a deux methodes pour recuperer notre node:
    -
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     TreeNode Node = treeView1.SelectedNode;
    OU
    -
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Point pt = new Point(e.X, e.Y);
                TreeNode Node = treeView1.GetNodeAt(pt);
    mais dans les deux cas ça n'a pas l'air de fonctionner... chercher l'erreur...

  2. #2
    Membre chevronné
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Par défaut
    Bon, je vous donne la réponse au problème de stark, en fait il créer un node mais il ne lui donner pas de name spécifique, d'où celui-ci étaient null
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

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

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