add columns on a treegrid PROBLEM

  1. #1

    add columns on a treegrid PROBLEM

    I want to add columns by click a button.
    Suppose 2 columns will be added when the button clicked, but the newly added columns overwrite previously ones. And the style of the treegrid is also cleared.

    the code :

    Defalut.aspx.cs

    using System;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
    using Ext.Net;

    public partial class _Default : System.Web.UI.Page
    {
    static int ct = 1;
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_DirectClick(object sender, DirectEventArgs e)
    {

    TreeGridColumn newCol = new TreeGridColumn();
    newCol.Header = "new column" + ct.ToString();
    newCol.Width = 100;
    newCol.DataIndex = newCol.Header;
    treegrid1.Columns.Add(newCol);
    ct++;

    TreeGridColumn newCol2 = new TreeGridColumn();
    newCol2.Header = "new column" + ct.ToString();
    newCol2.Width = 100;
    newCol2.DataIndex = newCol2.Header;
    treegrid1.Columns.Add(newCol2);

    ct++;

    treegrid1.Update();

    }
    }

    Defalut.aspx:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <%@ 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 runat="server">
    <title>PQD</title>
    <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

    <script type="text/javascript">
    var formatHours = function(v) {
    if (v < 1) {
    return Math.round(v * 60) + " mins";
    } else if (Math.floor(v) !== v) {
    var min = v - Math.floor(v);
    return Math.floor(v) + "h " + Math.round(min * 60) + "m";
    } else {
    return v + " hour" + (v === 1 ? "" : "s");
    }
    };

    </script>

    </head>
    <body>
    <form id="form1" runat="server">
    <ext:ResourceManager ID="ResourceManager1" runat="server" />
    <div>
    TreeGrid<br />
    <ext:Button ID="Button1" runat="server" Icon="Add" Text="addColumn" AutoPostBack="False">
    <DirectEvents>
    <Click OnEvent="Button1_DirectClick" />
    </DirectEvents>
    </ext:Button>
    </div>
    <div class="void">
    </div>
    <div id="tr" class="treegrid">
    <ext:TreeGrid ID="treegrid1" runat="server" Title="Core Team Projects" Width="800"
    Height="500" NoLeafIcon="true" EnableDD="true" Visible="true">
    <Columns>
    <ext:TreeGridColumn Header="task" Width="230" DataIndex="task" />
    <ext:TreeGridColumn Header="duration" Width="100" DataIndex="duration" Align="Center"
    SortType="AsFloat">
    <XTemplate ID="XTemplate1" runat="server">
    <Html>
    {duration:this.formatHours}
    </Html>
    <Functions>
    <ext:JFunction Name="formatHours" Fn="formatHours" />
    </Functions>
    </XTemplate>
    </ext:TreeGridColumn>
    <ext:TreeGridColumn Header="Assigned To" Width="150" DataIndex="user" />
    </Columns>
    <Root>
    <ext:TreeNode Text="Tasks">
    <Nodes>
    <ext:TreeNode Icon="Folder" Expanded="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Project: Shopping" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="13.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Housewares" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="1.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Kitchen supplies" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Groceries" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.4" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Cleaning supplies" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.4" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Office supplies" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.2" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    <ext:TreeNode Icon="Folder" Expanded="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Remodeling" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="12" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Retile kitchen" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="6.5" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Paint bedroom" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="2.75" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Ceiling" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="1.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Walls" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="1.5" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Decorate living room" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="2.75" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Fix lights" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.75" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Reattach screen door" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="2" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Project: Testing" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="2" />
    <ext:ConfigItem Name="user" Value="Core Team" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Mac OSX" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.75" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="FireFox" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Safari" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Chrome" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Tommy Maintz" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Windows" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="3.75" />
    <ext:ConfigItem Name="user" Value="Darrell Meyer" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="FireFox" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Darrell Meyer" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Safari" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Darrell Meyer" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Chrome" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Darrell Meyer" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Internet Explorer" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="3" />
    <ext:ConfigItem Name="user" Value="Darrell Meyer" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    <ext:TreeNode Icon="Folder">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Linux" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.5" />
    <ext:ConfigItem Name="user" Value="Aaron Conran" Mode="Value" />
    </CustomAttributes>
    <Nodes>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="FireFox" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Aaron Conran" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    <ext:TreeNode Leaf="true">
    <CustomAttributes>
    <ext:ConfigItem Name="task" Value="Chrome" Mode="Value" />
    <ext:ConfigItem Name="duration" Value="0.25" />
    <ext:ConfigItem Name="user" Value="Aaron Conran" Mode="Value" />
    </CustomAttributes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    </Nodes>
    </ext:TreeNode>
    </Root>
    </ext:TreeGrid>
    </div>
    </form>
    </body>
    </html>
    Last edited by hzhan11; Jun 13, 2012 at 1:32 AM.

Similar Threads

  1. [CLOSED] TreeGrid with editable columns
    By Daly_AF in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Jun 15, 2012, 12:00 PM
  2. [CLOSED] Problem Hiding/Showing TreeGrid Columns in Chrome
    By jmcantrell in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Nov 17, 2011, 2:13 PM
  3. [CLOSED] Can You Have Movable Columns in a TreeGrid?
    By garrisrd in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Jul 26, 2011, 3:31 PM
  4. Replies: 0
    Last Post: Sep 27, 2010, 12:59 PM
  5. [CLOSED] TreeGrid columns indenting too much and not sorting
    By jmcantrell in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Jun 03, 2010, 3:15 PM

Tags for this Thread

Posting Permissions