ASP.NET Gridview paging in List datasource

In a grid view if the data-source is used a list and the grid view is bind with the class attribute then we can also use paging on the grid view.

consider the gridview image:

the aspx:


 <asp:GridView ID="productGridView" runat="server" Width="700px" CellPadding="3" CellSpacing="1"  
           AutoGenerateColumns="False" Height="125px" ForeColor="#333333" AllowPaging="True"  
           GridLines="None"   
           OnSelectedIndexChanged="productGridView_SelectedIndexChanged" onpageindexchanging="productGridView_PageIndexChanging"   
           >  
           <AlternatingRowStyle BackColor="#A99B17" />  
           <Columns>  
             <asp:BoundField DataField="ProductId" HeaderText="Id" />  
             <asp:BoundField DataField="ProductCode" HeaderText="Item Code" ItemStyle-HorizontalAlign="Center" />  
             <asp:BoundField DataField="ProductName" HeaderText=" Product Name" />  
             <asp:BoundField DataField="ProductDescription" HeaderText="Description" />  
             <asp:BoundField DataField="ProductPrice" HeaderText="Price" ItemStyle-HorizontalAlign="Right" />  
             <asp:BoundField DataField="ProductQty" HeaderText="Qty (in SKU)" ItemStyle-HorizontalAlign="Right" />  
             <asp:BoundField DataField="ProductUnit" HeaderText="SKU Name" />  
             <asp:BoundField DataField="ProductVersion" HeaderText="Version" ItemStyle-HorizontalAlign="Center" />  
              <asp:BoundField DataField="ProductLine" HeaderText="Product Line" ItemStyle-HorizontalAlign="Center" />  
             <asp:CommandField ShowSelectButton="True" />  
           </Columns>  
           <EditRowStyle BackColor="#7C6F57" />  
           <FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />  
           <HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />  
           <PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />  
           <RowStyle BackColor="#E3EAEB" />  
           <SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333" />  
           <SortedAscendingCellStyle BackColor="#F8FAFA" />  
           <SortedAscendingHeaderStyle BackColor="#246B61" />  
           <SortedDescendingCellStyle BackColor="#D4DFE1" />  
           <SortedDescendingHeaderStyle BackColor="#15524A" />  
         </asp:GridView>  


Page index changing event :





     protected void productGridView_PageIndexChanging(object sender, System.Web.UI.WebControls.GridViewPageEventArgs e)  
     {  
       LoadProductDataGrid();  
       productGridView.PageIndex = e.NewPageIndex;  
       productGridView.DataBind();  
     }  
  private void LoadProductDataGrid()  
     {  
       productGridView.DataSource = _productManagerObj.GetAllProductInfo();  
       productGridView.DataBind();  
     }  
 // From Manager Class  
  internal List<Product> GetAllProductInfo()  
     {  
       return _productGatewayObj.GetAllProductInfo();  
     }  
 // In Gateway class  
 internal List<Product> GetAllProductInfo()  
     {  
      MeghnaGroupDataClassesDataContext  _meghnaGroupData = new MeghnaGroupDataClassesDataContext();  
       List<Product> products = new List<Product>();  
       foreach (var product in (from j in _meghnaGroupData.AD_PRODUCTs   
                    select j ).Distinct())  
       {  
         Product productObj = new Product();  
         productObj.ProductId = (int) product.ProductId;  
         productObj.ProductCode = product.Code;  
         productObj.ProductName = product.Name;  
         productObj.ProductDescription = product.Description;  
         productObj.ProductPrice = (decimal) product.Price;  
         productObj.ProductVersion = product.versionno;  
         productObj.ProductQty = (int) product.TotalQuantity;  
         productObj.ProductUnit = product.Unit;  
         productObj.ProductLine = product.TypeName;  
         products.Add(productObj);  
       }  
       return products;  
     }  

Popular posts from this blog

mvc razor textboxfor change event change another textboxfor value

WPF Crystal Report Viewer Using SAP

ASP.NET MVC razor SAP Crystal report