EXT.NET 3.0.0 RELEASED!
Now with Tablet Support!
Ext.NET 3.0.0 is here with lots of new cool features and now with tablet support! Check Examples Explorer now to see it in action or download and test it yourself for free!
Results 1 to 8 of 8

Thread: TreePanel and child

  1. #1
    Member
    Join Date
    Nov 2011
    Posts
    31

    TreePanel and child

    hi,
    i've a database with some fields (key, father, title, ecc...). i need to put them in a treepanel searching foreach parentnode child.
    Code:
                [...]
                myRows = dt.Select();
    
                for (int p = 0; p < myRows.Length; p++)
                {
                    Ext.Net.TreeNode parentNode; 
                    if (myRows[p]["FATHER"].ToString() == "")
                    {
                        // Create Parent Node if field "FATHER" is null
                        parentNode = new Ext.Net.TreeNode();
                        parentNode.Text = myRows[p]["TITLE"].ToString();
                        parentNode.Icon = Ext.Net.Icon.Application;
                        parentNode.NodeID = myRows[p]["KEY"].ToString();
                        root.Nodes.Add(parentNode);
                    }
                    else
                    {
    
                        foreach (Ext.Net.TreeNode nodo in root.Nodes.) // create childnodeID
                        {
                            if (nodo.NodeID == myRows[p]["FATHER"].ToString())
                            {
                                //Ext.Net.TreeNode nodo = root.Nodes[0];
                                Ext.Net.TreeNode childNode = new Ext.Net.TreeNode();
                                childNode.Text = myRows[p]["TITLE"].ToString();
                                childNode.NodeID = myRows[p]["KEY"].ToString();
                                nodo.Nodes.Add(childNode);
    
                            }
                        }
    This code works, but i need to populate tree in each level of child, with a recursive method, or something like that.
    I hope that I was well expressed, and sorry for my bad english ^^

  2. #2

  3. #3
    Member
    Join Date
    Nov 2011
    Posts
    31
    Hi,

    I tried to use PageTreeLoader, but i see only root, i'm not able to see children with my code...

  4. #4
    Ext.NET - Support Team Daniil's Avatar
    Join Date
    Jun 2010
    Location
    Saint-Petersburg, Russia
    Posts
    28,079
    I'm afraid I don't understand the problem. Please clarify.
    Daniil
    Ext.NET, Inc.
    Support Team

    Ext.NET Examples | Ext.NET API Docs | ExtJS API Docs | Twitter | Jobs

  5. #5
    Member
    Join Date
    Nov 2011
    Posts
    31
    I want to see a trepanel with each sublevel, but with my first code i see only first and second level. Can I post some screen?

  6. #6
    Ext.NET - Support Team Daniil's Avatar
    Join Date
    Jun 2010
    Location
    Saint-Petersburg, Russia
    Posts
    28,079
    I don't think a screen-shot helps in that case.

    Please provide a simple example to reproduce the problem.
    Daniil
    Ext.NET, Inc.
    Support Team

    Ext.NET Examples | Ext.NET API Docs | ExtJS API Docs | Twitter | Jobs

  7. #7
    Member
    Join Date
    Nov 2011
    Posts
    31
    Ok,

    Page .aspx.cs

    Code:
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Windows.Forms;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.OleDb;
    using System.ComponentModel;
    using System.Drawing;
    using System.Collections.Generic;
    using System.Text;
    using Ext.Net;
    using GoalManager.UserCs;
    using GoalManager.Common;
    
    public partial class gm_usercs_Main : System.Web.UI.Page
    {
        DataSet dprogetti, dpubbliche, dgestionali;
        protected void Page_Load(object sender, EventArgs e)
        {
    
            ActionPlanList apList = new ActionPlanList();
    
            dprogetti = (DataSet)apList.list(-10);
            dpubbliche = (DataSet)apList.list(-11);
            dgestionali = (DataSet)apList.list(-16);
    
            DataTable TableProgetti = dprogetti.Tables[dprogetti.Tables[0].TableName];
            DataTable TablePubbliche = dpubbliche.Tables[dpubbliche.Tables[0].TableName];
            DataTable TableGestionali = dgestionali.Tables[dgestionali.Tables[0].TableName];
    
            Ext.Net.TreePanel tree = new Ext.Net.TreePanel();
    
            tree.Icon = Ext.Net.Icon.Application;
            tree.RootVisible = false;
    
            Ext.Net.TreeNode root = new Ext.Net.TreeNode();
            tree.Root.Add(root);
    
            foreach (DataRow RowPubbliche in TableProgetti.Rows)
            {
                int key = Convert.ToInt32(RowPubbliche["KEY"]);
    
                ActionPlanList apList1 = new ActionPlanList();
                DataSet ds;
    
                ds = (DataSet)apList1.listTree(key);
                DataTable dt = ds.Tables[ds.Tables[0].TableName];
    
                DataRow[] myRows;
                myRows = dt.Select();
    
                for (int p = 0; p < myRows.Length; p++)
                {
                    Ext.Net.TreeNode parentNode;
                    if (myRows[p]["FATHER"].ToString() == "")
                    {
                        // Create Parent Node
                        parentNode = new Ext.Net.TreeNode();
                        parentNode.Text = myRows[p]["TITLE"].ToString();
                        parentNode.Icon = Ext.Net.Icon.Application;
                        parentNode.NodeID = myRows[p]["KEY"].ToString();
                        root.Nodes.Add(parentNode);
                    }
                    else
                    {
                        
                        foreach (Ext.Net.TreeNode nodo in root.Nodes)
                        {
                            if (nodo.NodeID == myRows[p]["FATHER"].ToString())
                            {
                                //Ext.Net.TreeNode nodo = root.Nodes[0];
                                Ext.Net.TreeNode childNode = new Ext.Net.TreeNode();
                                childNode.Text = myRows[p]["TITLE"].ToString();
                                childNode.NodeID = myRows[p]["KEY"].ToString();
                                nodo.Nodes.Add(childNode);
    
                            }
                        }
                }
    
            }
    
                Ext.Net.Panel panel1 = new Ext.Net.Panel("Settings");
                Ext.Net.Panel panel2 = new Ext.Net.Panel("Even More Stuff");
                Ext.Net.Panel panel3 = new Ext.Net.Panel("My Stuff");
    
                Ext.Net.Toolbar toolbar = new Ext.Net.Toolbar();
    
                Ext.Net.Window window = new Ext.Net.Window();
    
                window.Title = "Accordion Window";
                window.Width = Unit.Pixel(250);
                window.Height = Unit.Pixel(400);
                window.Maximizable = true;
                window.BodyBorder = false;
                window.Layout = "Accordion";
    
                window.TopBar.Add(toolbar);
    
                window.Items.Add(tree);
                window.Items.Add(panel1);
                window.Items.Add(panel2);
                window.Items.Add(panel3);
    
                this.PlaceHolder3.Controls.Add(window);
    
    
            
        }
    }
    Page .aspx

    Code:
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Main.aspx.cs" Inherits="gm_usercs_Main" Title="Untitled Page" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>    
    <title>Ciao</title>
    </head>
    <body>
    <form id="form1" runat="server">
    
    
            
        <ext:ResourceManager ID="ResourceManager3" runat="server">
        </ext:ResourceManager>
    
            <asp:PlaceHolder ID="PlaceHolder3" runat="server" />  
          
            
        </form>
    </body>
    
    </html>
    Screen: http://i.imgur.com/UtUrd.png

    but it should be like this: http://i.imgur.com/pKlEv.png

    So my code doesnt show sublevel... I hope to be clear... thanks for your patience ^^

  8. #8
    Ext.NET - Support Team Daniil's Avatar
    Join Date
    Jun 2010
    Location
    Saint-Petersburg, Russia
    Posts
    28,079
    If a node looks a leaf node, it means there is no children. Please ensure you add children to respective nodes.
    Daniil
    Ext.NET, Inc.
    Support Team

    Ext.NET Examples | Ext.NET API Docs | ExtJS API Docs | Twitter | Jobs

Similar Threads

  1. Replies: 5
    Last Post: Jul 24, 2012, 9:53 AM
  2. Replies: 4
    Last Post: May 30, 2012, 1:23 PM
  3. New tab from child tab
    By ven in forum 1.x Help
    Replies: 1
    Last Post: Dec 20, 2011, 3:03 AM
  4. Replies: 5
    Last Post: Mar 23, 2011, 10:57 AM
  5. Treepanel - get child values of selected parent
    By Tbaseflug in forum 1.x Help
    Replies: 2
    Last Post: Nov 10, 2009, 12:28 PM

Posting Permissions