[CLOSED] How can I update a GridPanel column header during a DirectEvent?

  1. #1

    [CLOSED] How can I update a GridPanel column header during a DirectEvent?

    I tried just setting the .Header property in the column model, but it doesn't change.
    Last edited by Daniil; Oct 13, 2010 at 12:14 PM. Reason: [CLOSED]
  2. #2
    Hi jmcantrell,

    Seems there is no appropriate server side wrapper for this client side action.
    For now I would suggest you this way.

    Example
    <%@ Page Language="C#" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <script runat="server">
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                Store store = this.GridPanel1.GetStore();
                store.DataSource = new object[] { 
                                             new object[] {"test"},
                                             new object[] {"test2"},
                                             new object[] {"test3"}
                                    };
                store.DataBind();
            }
        }
    
        protected void UpdateHeader(object sender, DirectEventArgs e)
        {
            string grid = GridPanel1.ClientID;
            GridPanel1.AddScript(   grid + ".getColumnModel().columns[0].header = 'New header'; " + 
                                    grid + ".getView().updateHeaders();"); 
        }
        
    </script>
    
    <!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>Ext.Net Example</title>
    </head>
    <body>
        <form runat="server">
        <ext:ResourceManager runat="server" />
        <ext:GridPanel ID="GridPanel1" runat="server" AutoHeight="true">
            <Store>
                <ext:Store runat="server">
                    <Reader>
                        <ext:ArrayReader>
                            <Fields>
                                <ext:RecordField Name="test" />
                            </Fields>
                        </ext:ArrayReader>
                    </Reader>
                </ext:Store>
            </Store>
            <ColumnModel runat="server">
                <Columns>
                    <ext:Column Header="Test" DataIndex="test" />
                </Columns>
            </ColumnModel>
        </ext:GridPanel>
        <ext:Button runat="server" Text="Update header" OnDirectClick="UpdateHeader" />
        </form>
    </body>
    </html>
  3. #3
    Also it can look like this:

    Example
    protected void UpdateHeader(object sender, DirectEventArgs e)
    {
        GridPanel1.ColumnModel.SetColumnHeader(0, "New header");
        GridPanel1.View.View.Call("updateHeaders");
    }
    To get this
    GridPanel1.View.View.Call("updateHeaders");
    working please add a View to a GridPanel in markup
    <ext:GridPanel ID="GridPanel1" runat="server" ...>
        ...
        <View>
            <ext:GridView runat="server" />
        </View>
    </ext:GridPanel>
    Or in code behind.

Similar Threads

  1. [CLOSED] Checkbox Column header in GridPanel
    By speedstepmem4 in forum 1.x Legacy Premium Help
    Replies: 4
    Last Post: Aug 12, 2014, 8:16 PM
  2. Replies: 2
    Last Post: Feb 22, 2012, 4:16 PM
  3. [CLOSED] Need help in GridPanel Column Header Formatting
    By ISI in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Mar 14, 2011, 11:31 AM
  4. [CLOSED] Format GridPanel Column Header!
    By Suntico in forum 1.x Legacy Premium Help
    Replies: 3
    Last Post: Sep 21, 2010, 4:30 PM
  5. [CLOSED] GridPanel column header and column chooser different value
    By acrossdev in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Jul 07, 2009, 6:01 AM

Posting Permissions