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 :

TreeView - Problème de sélection de noeud


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Shennong
    Homme Profil pro
    Technicien Informatique/Hotliner
    Inscrit en
    Février 2012
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Informatique/Hotliner
    Secteur : Santé

    Informations forums :
    Inscription : Février 2012
    Messages : 186
    Par défaut TreeView - Problème de sélection de noeud
    Bonjour,

    Je ne comprends pas ce qui se passe avec mon TreeView. Dans l'état actuel des choses, lorsque je clique sur un nœud, l'action sensée se dérouler ensuite est activée une fois sur deux, des fois pas du tout. Je suis obligé de cliquer sur le nœud enfant de mon TreeView, puis cliquer sur un autre nœud, puis recliquer sur ce même nœud enfant, pour que les actions (une requête SQL qui renvoie des données dans un DataGridView) soient exécutées.

    Pour gérer le clic sur les nœuds, j'ai utilisé l'Event "NodeMouseClick". Voici le code utilisé (le début car c'est là que ça va pas) :

    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
     
      Private Sub TvDossiers_NodeMouseClick(sender As Object, e As TreeNodeMouseClickEventArgs) Handles TvDossiers.NodeMouseClick
     
            Try
     
                Dim tvn As TreeNode = TvDossiers.SelectedNode
     
                If tvn Is Nothing Or tvn.Text.ToLower = "dutexte" Then
     
                    Exit Sub
     
                End If
     
            Catch
     
                Exit Sub
     
            End Try
     
    '==========
    'CODE QUI FONCTIONNE QUAND TOUT VA BIEN
    '==========
    End Sub
    Alors je sais que vu comme ça, ça n'a pas trop de sens. Mais sans le Try…Catch, rien ne marche, j'ai toujours l'erreur suivante, peu importe si je clique sur un "+" ou un nœud :

    Nom : ERREUR.png
Affichages : 337
Taille : 7,2 Ko

    Donc j'ai essayé de gérer avec un Try...Catch, et ça marche … quand ça veut, c'est assez bizarre.

    Ma question est donc la suivante :
    Quelles instructions faut-il utiliser, et/ou quel Event, pour que lorsque je clique sur un nœud comme par exemple "Extractions" (pas les "+", ni les "-" mais les nœuds parents et enfants), le nœud soit surligné (reste sélectionné) dans le TreeView et l'action requise ensuite soit exécutée sans avoir besoin de cliquer ailleurs avant etc … ????

    Pour que ce soit plus parlant, voici une capture du treeview en question :

    Nom : TREEVIEW.png
Affichages : 301
Taille : 12,6 Ko

    Merci d'avance de votre aide car là je n'en peux plus de ce problème !!! Help !!!

    Merci.

    Cordialement-

  2. #2
    Membre Expert Avatar de Phil Rob
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2013
    Messages
    1 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 613
    Par défaut
    Bonsoir,

    Essaie donc ce 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
     
      Private Sub TvDossiers_NodeMouseClick(sender As Object, e As TreeNodeMouseClickEventArgs) Handles TvDossiers.NodeMouseClick
     
    ' Le texte du node cliqué est donné par e.Node.Text. Donc :
     
    Dim tvn_txt as string = e.Node.Text
    If tvn_txt = String.empty OR tvn_txt.ToLower = "dutexte" then
         Exit Sub
    End If
     
    '==========
    'CODE QUI FONCTIONNE QUAND TOUT VA BIEN
    '==========
    End Sub

  3. #3
    Membre éclairé Avatar de Shennong
    Homme Profil pro
    Technicien Informatique/Hotliner
    Inscrit en
    Février 2012
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Technicien Informatique/Hotliner
    Secteur : Santé

    Informations forums :
    Inscription : Février 2012
    Messages : 186
    Par défaut
    Bonjour Phil Rob,

    Désolé pour le temps de réponse

    J'ai essayé le bout de code que tu m'as fourni. C'est un bout de code que j'avais également sur le net et qui continuait à m'afficher l'erreur mais après, dans l'instruction suivant ce bloc.
    J'ai bien regardé mon instruction, et finalement j'ai compris. J'utilisais "MonTreeView.SelectedNode.FullPath", dans l'instruction suivante, et il me retournait toujours l'erreur mise en capture dans mon premier post.
    Je l'ai donc modifié par "e.Node.FullPath", et là … ça marche nickel !

    Donc merci à toi, c'était une simple étourderie finalement. Désormais tout se passe comme prévu et dès le premier clic sur un nœud.

    Ce n'était pas grand chose au final.

    Merci encore et bonne semaine.

    Cordialement-

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

Discussions similaires

  1. problème de sélection d'un noeud dan un treeview
    Par TaymouWan dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/03/2009, 16h05
  2. Problème d'ajout de noeud dans un treeview
    Par kince dans le forum VB.NET
    Réponses: 1
    Dernier message: 31/05/2007, 18h57
  3. [c# 2.0] TreeView et sélection des noeuds
    Par OtI$ dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/04/2007, 11h11
  4. [DOM] Problème de sélection de noeuds
    Par SimOOn dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 22/10/2006, 17h13
  5. [XPath] Problème de sélection de noeuds
    Par Heriquet dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 18/02/2006, 10h22

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