Bonjour a tous,

je travaille en ce moment sur une page au sein de laquelle je construit dynamiquement un treeview qui me permet d'afficher des données sur des personnes selon de multiples criteres de choix.

Pour cela, je dispose d'un treeview, contenant 5 Treenodes crées en dur, contenant eux meme 3 a 4 childNodes.

Pour peupler ces noeuds, j'utilise une methode de ce type:
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
    Sub PopulateNoeudEnfant(ByVal node As TreeNode)
        Dim MyDataSet As DataSet = RunQuery("SELECT TABLE_ID, TABLE_LIBELLE " _
        & " FROM TABLEX, TABLEY,  " _ 'etc.
        & " WHERE TABLEID=" & node.Value) 'récupération ID du noeud parent
        If MyDataSet.Tables.Count > 0 Then
            'Parcours des colonnes du Dataset
            Dim row As Data.DataRow
            For Each row In MyDataSet.Tables(0).Rows
                'Création du nouveau noeud.
                Dim MyNewChildNode As TreeNode = New TreeNode(row("TABLE_LIBELLE").ToString(), row("TABLE_ID").ToString())
                MyNewChildNode.PopulateOnDemand = True
                MyNewChildNode.CollapseAll()
                ' Ajout du nouveau noeud à la collection de noeuds enfants du noeud parents
                node.ChildNodes.Add(MyNewChildNode)
            Next
        End If
    End Sub
Or, pour mes 5 Treenode, seuls la requete et le noeud parent changent lors de la création des noeuds enfants,

Je voudrais donc factoriser mon code de maniere a n'avoir qu'a appeller une fonction a laquelle je passerais simplement des parametres pour alleger sensiblement mon code.
Mais (parce qu'il y a toujours un Mais) j'ai beaucoup de mal a me representer la maniere dont je dois construire cette fonction, quels parametres lui passer, quoi retourner, ect.

Pourriez vous m'aiguiller?

D'avance merci et bonne journée