[CLOSED] Create Editable Grid from server side

  1. #1

    [CLOSED] Create Editable Grid from server side

    There's a way to create an editable grid on server side?
    I tried something like that, but don?t work.

    In fact I only need a checkbox editable in grid

    design
      <form id="form1" runat="server">
        <ext:ResourceManager runat="server">
        </ext:ResourceManager>
       
        <ext:GridPanel 
                ID="GridPanel1" 
                runat="server"
                Width="350"
                Height="200"
                Title="EditableGrid Plugin">
            </ext:GridPanel>
        </form>
    code behind
        protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
    
                    GridPanel1.Reconfigure();
    
                    Store store = new Store();
                    store.Reader.Add(new ArrayReader());
    
                    store.Reader[0].Fields.Add("Check", RecordFieldType.Boolean);
                    store.Reader[0].Fields.Add("Value", RecordFieldType.Int);
                    store.Reader[0].Fields.Add("Text", RecordFieldType.String);
    
                    GridPanel1.Store.Add(store);
                    GridPanel1.Plugins.Add(new EditableGrid());
    
                    ColumnBase col = new CheckColumn
                    {
                        Header = "Check",
                        Width = 50,
                        Sortable = true,
                        Editable = true
                    };
    
                    col.Editor.Add(new Checkbox());
                    GridPanel1.AddColumn(col);
    
    
                    col = new Column
                    {
                        Header = "Value",
                        Width = 130,
                        Sortable = true,
                        Editable = true,
                    };
    
                    col.Editor.Add(new TextField());
                    GridPanel1.AddColumn(col);
    
                    col = new Column
                    {
                        Header = "Text",
                        Width = 130,
                        Sortable = true,
                        Editable = true
    
                    };
    
                    col.Editor.Add(new TextField());
                    GridPanel1.AddColumn(col);
                    #region dados
    
                    this.GridPanel1.Store.Primary.DataSource = new List<object>
                {
                    new object[] { 
                        true,
                        1, 
                        "One"
                    },
                    new object[]{ 
                        true,
                        2, 
                        "Two"
                    },
                    new object[]{ 
                        true,
                        3, 
                        "Three"
                    },
                    new object[]{ 
                        true,
                        4, 
                        "Four"
                    },
                    new object[]{ 
                        true,
                        5, 
                        "Five"
                    }
                };
    
                    this.GridPanel1.Store.Primary.DataBind();
    
                    #endregion
    
                }
            }
    tks.
    Last edited by Daniil; Sep 15, 2011 at 2:32 PM. Reason: [CLOSED]
  2. #2
    Hi,

    EditableGrid doesn't support checkbox as editor.

    Please use CheckColumn:
    <ext:CheckColumn DataIndex="check" Header="Check" Editable="true" />
    As well:

    1. Please use .Reconfigure() during DirectEvent/DirectMethod only if a column model of a grid is changed.
    It's not required to call .Reconfigure() during Page_Load.

    2. Please use .AddColumn() during DirectEvent/DirectMethod only. During Page_Load use:
    GridPanel1.ColumnModel.Columns.Add(col);
  3. #3
    Thanks Dannil,
    Works very well :)

    here is my solution

    design:
     <form id="form1" runat="server">
        <ext:ResourceManager runat="server">
        </ext:ResourceManager>
       
        <ext:GridPanel 
                ID="GridPanel1" 
                runat="server"
                Width="350"
                Height="200"
                Title="EditableGrid Plugin">
            </ext:GridPanel>
        </form>
    code behind:
         protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack && !X.IsAjaxRequest)
                {
    
                    Store store = new Store();
                    store.Reader.Add(new ArrayReader());
    
                    store.Reader[0].Fields.Add("Check", RecordFieldType.Boolean);
                    store.Reader[0].Fields.Add("Value", RecordFieldType.Int);
                    store.Reader[0].Fields.Add("Text", RecordFieldType.String);
    
                    GridPanel1.Store.Add(store);
                    GridPanel1.Plugins.Add(new EditableGrid());
    
                    ColumnBase col = new CheckColumn
                    {
                        Header = "Check",
                        Width = 50,
                        DataIndex = "Check",
                        Sortable = true,
                        Editable = true
                    };
    
                    GridPanel1.ColumnModel.Columns.Add(col);
    
    
                    col = new Column
                    {
                        Header = "Value",
                        Width = 130,
                        DataIndex = "Value",
                        Sortable = true,
                        Editable = true,
                    };
    
                    col.Editor.Add(new TextField());
                    GridPanel1.ColumnModel.Columns.Add(col);
    
                    col = new Column
                    {
                        Header = "Text",
                        Width = 130,
                        DataIndex = "Text",
                        Sortable = true,
                        Editable = true
    
                    };
    
                    col.Editor.Add(new TextField());
                    GridPanel1.ColumnModel.Columns.Add(col);
    
                    #region dados
    
                    this.GridPanel1.Store.Primary.DataSource = new List<object>
                {
                    new object[] { 
                        true,
                        1, 
                        "One"
                    },
                    new object[]{ 
                        true,
                        2, 
                        "Two"
                    },
                    new object[]{ 
                        true,
                        3, 
                        "Three"
                    },
                    new object[]{ 
                        true,
                        4, 
                        "Four"
                    },
                    new object[]{ 
                        true,
                        5, 
                        "Five"
                    }
                };
    
                    this.GridPanel1.Store.Primary.DataBind();
    
                    #endregion
    
                }
            }

    []'s

Similar Threads

  1. Replies: 2
    Last Post: Jun 06, 2012, 8:27 PM
  2. [CLOSED] How to clear FormPanel and create one new in server side
    By caha76 in forum 1.x Legacy Premium Help
    Replies: 2
    Last Post: Jan 22, 2011, 9:17 PM
  3. Replies: 1
    Last Post: Jan 20, 2011, 1:39 AM
  4. Create Simple Store and Bind to Grid Client-Side?
    By Tbaseflug in forum 1.x Help
    Replies: 4
    Last Post: Oct 30, 2009, 5:27 PM
  5. Update grid from Server Side
    By Maia in forum 1.x Help
    Replies: 3
    Last Post: Jun 03, 2009, 2:21 PM

Posting Permissions