RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging

  1. #1

    RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging



    THE FIRST TIME THAT I USE A GRID PANEL I RETRIEVE ALL REGISTERS FROM MY SQLDATASOURCE BUT I'm using A BUTTON TO SET the PAGESIZE PROPERTY from toolbar paging object IN ORDER TO PAGING the REGISTERS....after that I WOULD LIKE TO KNOW IF I CAN RETRIEVE ALL REGISTERS after a paging USING ANOTHER BUTTON . what method can I use?????

    thanks
  2. #2

    RE: RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging

    Hi marcmvc,

    Can you provide a sample of how you have things currently configured?


    Geoffrey McGill
    Founder
  3. #3

    RE: RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging

    <ext:ScriptManager ID="ScriptManager1" runat="server" />
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ConnectionStrings:EmpleadosConnectionString %>" SelectCommand="SELECT * FROM [Empleado]">
        </asp:SqlDataSource>
    
    <br />
    
    <ext:Store ID="Store1" runat="server" DataSourceID="SqlDataSource1" OnRefreshData="Refresh" AutoDataBind="true" >
        <Reader>
            <ext:JsonReader ReaderID="Reader1">
                <Fields>
                    <ext:RecordField Name="Cedula" />
                    <ext:RecordField Name="Nombres" />
                    <ext:RecordField Name="Sueldo" />
                    <ext:RecordField Name="FechaIngreso" Type="Date" />
                    <ext:RecordField Name="Jubilado" Type="Boolean" />
                    <ext:RecordField Name="Tipo" Type="String" />
                </Fields>
            </ext:JsonReader>
        </Reader>
        <Listeners>
            <LoadException Handler="Ext.Msg.alert('No se pudo Cargar Empleados', e.message || e )" />
            <CommitFailed Handler="Ext.Msg.alert('No Commit', 'Rason: ' + msg)" />
            <SaveException Handler="Ext.Msg.alert('fallo Grabar', e.message || e)" />
            <CommitDone Handler="Ext.Msg.alert('Operacion Completada', 'Datos grabados correctamente');" />
        </Listeners>
    </ext:Store>
    
    <ext:Panel ID="Panel1" runat="server" Height="480" Floating="true" Title="ContenedorGrid" Collapsible="true">
        <Body>
            <ext:GridPanel ID="GridPanel1" runat="server" Title="GridPrueba" StoreID="Store1" Height="400">
                <ColumnModel id="ctl04">
                    <Columns>
                        <ext:Column Header="Cedula" DataIndex="Cedula">
                            <Editor>
                            <ext:TextField ID="txtCedula" runat="server" />
                            </Editor>
                            </PrepareCommand>
                        </ext:Column>
                        <ext:Column Header="Nombre" DataIndex="Nombres" >
                        </PrepareCommand>
                        </ext:Column>
                        <ext:Column Header="Sueldo" DataIndex="Sueldo" >
                        </PrepareCommand>
                        </ext:Column>
                        <ext:Column Header="FechaIngreso" DataIndex="FechaIngreso" >
                        </PrepareCommand>
                        <Renderer Fn="Ext.util.Format.dateRenderer('Y-m-d')" />
                        </ext:Column>
                        <ext:Column Header="Jubilado" DataIndex="Jubilado" >
                        <Renderer Handler="return (value) ? 'Si':'No';" />
                        </ext:Column>
                        <ext:Column Header="Cargo" DataIndex="Tipo" />
                    </Columns>
                </ColumnModel>
            <SelectionModel>
                <ext:CheckboxSelectionModel ID="checkSeleccionModelo" runat="server" />
            </SelectionModel>
            <BottomBar>
                <ext:PagingToolbar ID="Toolbar1" runat="server"/>
            </BottomBar>
            <SaveMask ShowMask="true" />
            <LoadMask ShowMask="true" />
            <Plugins>
                <ext:GridFilters ID="GridFilters1">
                    <Filters>
                        <ext:StringFilter DataIndex="Cedula" />
                        <ext:StringFilter DataIndex="Nombres" />
                        <ext:NumericFilter DataIndex="Sueldo" />
                        <ext:DateFilter DataIndex="FechaIngreso"/>
                        <ext:BooleanFilter DataIndex="Jubilado" YesText="Si" NoText="No" />
                        <ext:ListFilter DataIndex="Tipo" Options="Gerente, Pasante" />
                    </Filters>
                </ext:GridFilters>
            </Plugins>
            </ext:GridPanel>
        </Body>
        <BottomBar>
            <ext:Toolbar ID="botones" runat="server" >
                <Items>
                    <ext:Button ID="btnPaginar" Text="Paging" runat="server" Icon="Bomb" EnableToggle="true" >
                        <AjaxEvents>
                            <Click OnEvent="Paging"></Click>
                        </AjaxEvents>
                    </ext:Button >
                    <ext:TextField ID="TextField1" runat="server" Width="30"/>
                    <ext:Label ID="lblPaginacion" runat="server" Text="#Registers per page" />
                    <ext:ToolbarFill ID="Llenado" runat="server"/>
                    <ext:Button ID="btnPostback" Text="Postback" AutoPostBack="true" runat="server" />
                    <ext:Button ID="btnAjaxPostback" Text="AjaxPostback" runat="server" AutoRender="true" >
                        <AjaxEvents>
                            <Click OnEvent="Button2_Click">
                                <EventMask ShowMask="true" />
                            </Click>
                        </AjaxEvents>
                    </ext:Button>
                    <ext:Button ID="btnShowAll" Text="ShowAll" runat="server">
                        <AjaxEvents>
                            <Click OnEvent="ShowAll" />
                        </AjaxEvents>
                    </ext:Button>
                </Items>
            </ext:Toolbar>
        </BottomBar>
    </ext:Panel>
    <p>
    </form>
    </body>
    </html>
    c# code

    protected void Paging(object sender, AjaxEventArgs e)
    {
        this.Toolbar1.PageSize=Convert.ToInt16(TextField1.Text);
    }
    
    protected void ShowAll(object sender, AjaxEventArgs e)
    {
        //I need a method for show All registers after the pagesize property is defined  
    }
    
    // i I don't know if you need an image of the application please tell me
  4. #4

    RE: RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging

    Hi marcmvc,

    I'm still not 100% sure what your requirements are. Do you need to change the PageSize during an ajax request? If yes, the following sample demonstrates calling the .SetPageSize() Method on the PagingToolBar component.

    Example

    <%@ Page Language="C#" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    
    <script runat="server">
        private object[] TestData
        {
            get
            {
                DateTime now = DateTime.Now;
    
                return new object[]
                {
                    new object[] { "3m Co", 71.72, 0.02, 0.03, now },
                    new object[] { "Alcoa Inc", 29.01, 0.42, 1.47, now },
                    new object[] { "Altria Group Inc", 83.81, 0.28, 0.34, now },
                    new object[] { "American Express Company", 52.55, 0.01, 0.02, now },
                    new object[] { "American International Group, Inc.", 64.13, 0.31, 0.49, now },
                    new object[] { "AT&amp;T Inc.", 31.61, -0.48, -1.54, now },
                    new object[] { "Boeing Co.", 75.43, 0.53, 0.71, now },
                    new object[] { "Caterpillar Inc.", 67.27, 0.92, 1.39, now },
                    new object[] { "Citigroup, Inc.", 49.37, 0.02, 0.04, now },
                    new object[] { "E.I. du Pont de Nemours and Company", 40.48, 0.51, 1.28, now },
                    new object[] { "Exxon Mobil Corp", 68.1, -0.43, -0.64, now },
                    new object[] { "General Electric Company", 34.14, -0.08, -0.23, now },
                    new object[] { "General Motors Corporation", 30.27, 1.09, 3.74, now },
                    new object[] { "Hewlett-Packard Co.", 36.53, -0.03, -0.08, now },
                    new object[] { "Honeywell Intl Inc", 38.77, 0.05, 0.13, now },
                    new object[] { "Intel Corporation", 19.88, 0.31, 1.58, now },
                    new object[] { "International Business Machines", 81.41, 0.44, 0.54, now },
                    new object[] { "Johnson &amp; Johnson", 64.72, 0.06, 0.09, now },
                    new object[] { "JP Morgan &amp; Chase &amp; Co", 45.73, 0.07, 0.15, now },
                    new object[] { "McDonald\"s Corporation", 36.76, 0.86, 2.40, now },
                    new object[] { "Merck &amp; Co., Inc.", 40.96, 0.41, 1.01, now },
                    new object[] { "Microsoft Corporation", 25.84, 0.14, 0.54, now },
                    new object[] { "Pfizer Inc", 27.96, 0.4, 1.45, now },
                    new object[] { "The Coca-Cola Company", 45.07, 0.26, 0.58, now },
                    new object[] { "The Home Depot, Inc.", 34.64, 0.35, 1.02, now },
                    new object[] { "The Procter &amp; Gamble Company", 61.91, 0.01, 0.02, now },
                    new object[] { "United Technologies Corporation", 63.26, 0.55, 0.88, now },
                    new object[] { "Verizon Communications", 35.57, 0.39, 1.11, now },
                    new object[] { "Wal-Mart Stores, Inc.", 45.45, 0.73, 1.63, now }
                };
            }
        }
        
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                this.Store1.DataSource = this.TestData;
                this.Store1.DataBind(); 
            }
        }
    
        protected void MyData_Refresh(object sender, StoreRefreshDataEventArgs e)
        {
            this.Store1.DataSource = this.TestData;
            this.Store1.DataBind(); 
        }
    
        protected void Button1_Click(object sender, DirectEventArgs e)
        {
            this.PagingToolBar1.SetPageSize(Convert.ToInt32(this.SpinnerField1.Number));
        }
    </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>Simple Array Grid With Paging and Remote reloading - Ext.Net Examples</title>
    
        <script type="text/javascript">
            var template = '{1}';
    
            var change = function (value) {
                return String.format(template, (value > 0) ? "green" : "red", value);
            };
    
            var pctChange = function (value) {
                return String.format(template, (value > 0) ? "green" : "red", value + "%");
            };
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
            <ext:ResourceManager runat="server" />
            
            <ext:Store ID="Store1" runat="server" OnRefreshData="MyData_Refresh">
                <Reader>
                    <ext:ArrayReader>
                        <Fields>
                            <ext:RecordField Name="company" />
                            <ext:RecordField Name="price" Type="Float" />
                            <ext:RecordField Name="change" Type="Float" />
                            <ext:RecordField Name="pctChange" Type="Float" />
                            <ext:RecordField Name="lastChange" Type="Date" DateFormat="Y-m-dTh:i:s" />
                        </Fields>
                    </ext:ArrayReader>
                </Reader>
            </ext:Store>
            
            <ext:GridPanel 
                runat="server" 
                StoreID="Store1" 
                StripeRows="true"
                Title="Array Grid" 
                Width="600" 
                Height="290"
                AutoExpandColumn="Company">
                <ColumnModel ID="ColumnModel1" runat="server">
                    <Columns>
                        <ext:Column ColumnID="Company" Header="Company" Width="160" DataIndex="company" />
                        <ext:Column Header="Price" Width="75" DataIndex="price">
                            <Renderer Format="UsMoney" />
                        </ext:Column>
                        <ext:Column Header="Change" Width="75" DataIndex="change">
                            <Renderer Fn="change" />
                        </ext:Column>
                        <ext:Column Header="Change" Width="75" DataIndex="pctChange">
                            <Renderer Fn="pctChange" />
                        </ext:Column>
                        <ext:DateColumn Header="Last Updated" Width="85" DataIndex="lastChange" />
                    </Columns>
                </ColumnModel>
                <SelectionModel>
                    <ext:RowSelectionModel runat="server" />
                </SelectionModel>
                <LoadMask ShowMask="true" />
                <TopBar>
                    <ext:Toolbar runat="server">
                        <Items>
                            <ext:SpinnerField 
                                ID="SpinnerField1" 
                                runat="server" 
                                Number="10" 
                                IncrementValue="5" 
                                MinValue="5"
                                Width="65" 
                                />
                            <ext:Button runat="server" Text="Update Page Size">
                                <DirectEvents>
                                    <Click OnEvent="Button1_Click" />
                                </DirectEvents>
                            </ext:Button>
                        </Items>
                    </ext:Toolbar>
                </TopBar>
                <BottomBar>
                    <ext:PagingToolBar ID="PagingToolBar1" runat="server" PageSize="10" StoreID="Store1" />
                </BottomBar>
            </ext:GridPanel>
        </form>
    </body>
    </html>
    If this is not what you require, then we're going to need more information. Specifically, I need to know what you mean by:

    // I need a method for show All registers after the pagesize property is defined
    Geoffrey McGill
    Founder
  5. #5

    RE: RETRIEVE ALL REGISTERS ON A GRID PANEL after a paging

    I forgot to mention, the sample I posted above uses some v1.0 syntax and new controls (SpinnerField), but the principle is the same. Just call the .SetPageSize() Method.

    Hope this helps.

    Geoffrey McGill
    Founder

Similar Threads

  1. Custom Paging in Grid Panel
    By nehajaiswal in forum 1.x Help
    Replies: 5
    Last Post: May 19, 2011, 10:24 AM
  2. Replies: 2
    Last Post: Feb 25, 2011, 1:21 PM
  3. [CLOSED] Paging in grid panel
    By Vasudhaika in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Nov 29, 2010, 8:26 AM
  4. [CLOSED] Group Count in Grid Panel along with paging (0.8.3)
    By vedagopal2004 in forum 1.x Legacy Premium Help
    Replies: 2
    Last Post: Nov 24, 2010, 7:20 AM
  5. grid panel filter with paging
    By snow_cap in forum 1.x Help
    Replies: 1
    Last Post: Aug 02, 2010, 6:31 PM

Posting Permissions