Change Order Of GridPanel' Column in code behind

  1. #1

    Change Order Of GridPanel' Column in code behind

    Hi

    I want to change the order of Column of GridPanel during Page_Load() event, how can I implement?
  2. #2
    Hello!

    Try the following:

    <%@ Page Language="C#" %>
    
    <%@ Import Namespace="Button=Ext.Net.Button" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <script runat="server">
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                this.BindData();
            }
        }
    
        protected void Switch(object sender, DirectEventArgs e)
        {
            ((Button)sender).Disabled = true;
            
            ColumnBase c = this.GridPanel1.ColumnModel.Columns[0];
            this.GridPanel1.ColumnModel.Columns[0] = this.GridPanel1.ColumnModel.Columns[1];
            this.GridPanel1.ColumnModel.Columns[1] = c;
            this.GridPanel1.Reconfigure();
            this.GridPanel1.Refresh();
        }
    
        private void BindData()
        {
            this.Store1.DataSource = this.Data;
            this.Store1.DataBind();
        }
        
        private object Data
        {
            get
            {
                return new List<object>
                {
                   new { company = "3m Co", price = 71.72, change = 0.02, pctChange = 0.03, lastChange = "9/1 12:00am" },
                   new { company = "Alcoa Inc", price = 29.01, change = 0.42, pctChange = 1.47, lastChange = "9/1 12:00am" },
                   new { company = "Altria Group Inc", price = 83.81, change = 0.28, pctChange = 0.34, lastChange = "9/1 12:00am" },
                   new { company = "American Express Company", price = 52.55, change = 0.01, pctChange = 0.02, lastChange = "9/1 12:00am" }
                };
            }
        }
    </script>
    
    <!DOCTYPE html>
    
    <html>
    <head runat="server">
        <title>Ext.NET Examples</title>
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" />
            
            <h1>Modify ColumnModel during DirectEvent</h1>
            
            <ext:GridPanel 
                ID="GridPanel1" 
                runat="server" 
                Title="Array Grid"
                Width="600" 
                Height="350">
                <Store>
                    <ext:Store ID="Store1" runat="server">
                        <Model>
                            <ext:Model runat="server">
                                <Fields>
                                    <ext:ModelField Name="company" />
                                    <ext:ModelField Name="price" Type="Float" />
                                    <ext:ModelField Name="change" Type="Float" />
                                    <ext:ModelField Name="lastChange" Type="Date" DateFormat="M/d hh:mmtt" />
                                </Fields>
                            </ext:Model>
                        </Model>
                    </ext:Store>
                </Store>
                <ColumnModel runat="server">
                    <Columns>
                        <ext:Column runat="server" Text="Company" DataIndex="company" Flex="1" />
                        <ext:Column runat="server" Text="Price" Width="75" DataIndex="price">
                        </ext:Column>
                        <ext:Column runat="server" Text="Change" Width="75" DataIndex="change" />
                    </Columns>
                </ColumnModel>
                <SelectionModel>
                    <ext:RowSelectionModel runat="server" Mode="Single" />
                </SelectionModel>
                <View>
                    <ext:GridView runat="server" StripeRows="true" TrackOver="true" />
                </View>
                <BottomBar>
                    <ext:Toolbar runat="server">
                        <Items>
                            <ext:ToolbarFill runat="server" />
                            <ext:Button runat="server" Text="Reconfigure">
                                 <DirectEvents>
                                    <Click OnEvent="Switch" Single="true" />
                                 </DirectEvents>
                            </ext:Button>
                        </Items>
                    </ext:Toolbar>
                </BottomBar>
            </ext:GridPanel>  
        </form>
    </body>
    </html>

Similar Threads

  1. [CLOSED] Order GridPanel Groups in an arbitrary order?
    By dmoore in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Dec 27, 2013, 4:35 AM
  2. Replies: 2
    Last Post: May 24, 2012, 8:33 AM
  3. [CLOSED] [1.0] Gridpanel column's order
    By PoloTheMonk in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Jan 12, 2011, 10:51 AM
  4. Replies: 1
    Last Post: Nov 24, 2009, 11:31 AM
  5. [CLOSED] How to change column order in the grid.
    By Etisbew in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Oct 15, 2009, 4:48 AM

Posting Permissions