0 votes

Construire un Treeview avec des tables parent, enfant

Je suis en train de construire un treeview en utilisant asp.net 2.0/3.5 à partir d'une table maître détail.

Valeur de la table parente ---Valeur de la table enfant ---Noeud de la table petit-enfant1 ---Valeur de la table petit-enfant1 ---Noeud de la table petit-enfant2 ---Valeur de la table petit-enfant1

J'ai créé quelque chose comme cela pour peupler les valeurs des nœuds. Mais je ne sais pas comment afficher le petit-enfantNode et les valeurs. Pourriez-vous s'il vous plaît me faire savoir s'il y a des idées? Merci pour toute aide.

protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
{
    switch (e.Node.Depth)
    {
        case 0:
            ObtenirValeursTableParent(e.Node);
            break;
        case 1:
            ObtenirValeursTableEnfant(e.Node);
            break;
        case 2:

    }
}

1voto

ptou Points 133

Voici ma solution :

string NodeText = string.Empty;
string NodeKey = string.Empty;
TreeRolesList.Nodes.Clear();

DataTable dtEnqRoles = bllENQRolesMaster.GetENQRolesMasterByRolesDetail();

if (dtEnqRoles.Rows.Count > 0)
{
    for (int i = 0; i < dtEnqRoles.Rows.Count; )
    {
        NodeText = dtEnqRoles.Rows[i]["RoleDescriptionMaster"].ToString().Trim();
        NodeKey = dtEnqRoles.Rows[i]["RoleMasterID"].ToString();
        TreeNode pNode = new TreeNode(NodeText, NodeKey);
        TreeRolesList.Nodes.Add(pNode);

        foreach (DataRow dr in dtEnqRoles.Select("RoleMasterID = " + NodeKey))
        {
            TreeNode childNode = new TreeNode(dr["RoleDescriptionDetail"].ToString().Trim(), dr["RoleDetailID"].ToString());
            pNode.ChildNodes.Add(childNode);
            i++; //incrementing the outer loop here
        }

    }
    TreeRolesList.ExpandAll();
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X