Treeview : si parent alors sélectionner enfant

cs_erwan35 Messages postés 57 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 21 avril 2006 - 8 août 2003 à 03:47
cs_erwan35 Messages postés 57 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 21 avril 2006 - 8 août 2003 à 12:52
J'ai un problème avec un treeview en relation avec une base de données.
Ce que je souhaite faire:
si click sur parent alors
sélectionner premier enfant (surbrillance)
puis exécuter requête concernant le premier enfant dépendant du parent.
Si click sur enfant alors
exécuter requête concenant enfant sélectionné.
Et il ne faut pas que ça plante dans le cas suivant:
Sélection d'un parent (donc affichage et sélection du 1 er enfant) et la sélection d'un autre enfant ne dépendant pas du même parent.

J'espère que j'ai pu être clair dans mon explication!

Merci d'avance pour vos réponses.
A voir également:

3 réponses

cs_DarkSun Messages postés 17 Date d'inscription mardi 22 janvier 2002 Statut Membre Dernière intervention 24 février 2008
8 août 2003 à 08:43
Salut,

Je vois pas trop ou est la difficulté dans ton probleme.

Déja, on suppose que les noeuds parents commencent par "PA" et les enfants par "EN" et suivi d'un numero.
Par exemple : "PA0001" et "EN0001".

Private Sub Tree_Click()
   If Not Tree.SelectedItem Is Nothing Then
        'Si on clique sur un noeud Parent et qu'il y a un enfant
        If Left(Tree.SelectedItem.Key, 2) = "PA" And Not Tree.SelectedItem.Child Is Nothing Then
            'Selection du noeud enfant
            Tree.SelectedItem.Child.Selected = True
            'On rappelle la procedure de click
            Tree_Click
        'Si on clique sur un noeud Enfant
        ElseIf Left(Tree.SelectedItem.Key, 2) = "EN" Then
            'Traitement à faire en utilisant comme parent :  Tree.SelectedItem.Parent
        End If
    End If
End Sub
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
8 août 2003 à 08:50
Chaque noeud de la treeview possède une propriété "Child", qui représente son 1er fils donc dans l'évènement NodeClick()

If Not Node.Child Is Nothing Then
Node.Child.Selected = True
' Code pour execution de ta requète
End If

Christophe R.
0
cs_erwan35 Messages postés 57 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 21 avril 2006
8 août 2003 à 12:52
Merci à vous deux pour ces réponses qui ont résolu mon problème.
@+
Erwan
0
Rejoignez-nous