ASP.NET(vb.net) & DataGrid - AllowSorting and AllowPaging/Pagination Example scripts how to Explains DataGrid control in asp.net , Binding the datasource to DataGrid control and example enabled AllowSorting and AllowPaging.
ShotDev Focus:
- ASP.NET(vb.net) & DataGrid - AllowSorting and AllowPaging
Example
DataGridAllowSortingAllowPaging.aspx
<%@ import Namespace="System.Data" %> <%@ import Namespace="System.Data.OleDb" %> <%@ Page Language="VB" %> <script runat="server"> Dim strFields As String = "CustomerID" Sub Page_Load(sender As Object, e As EventArgs) IF Not Page.IsPostBack() Then BindData() End IF End Sub Sub BindData() Dim objConn As New OleDbConnection Dim objCmd As New OleDbCommand Dim dtAdapter As New OleDbDataAdapter Dim ds As New DataSet Dim strConnString,strSQL As String strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("database/mydatabase.mdb")&";" strSQL = "SELECT * FROM customer ORDER BY " & strFields & " ASC" objConn.ConnectionString = strConnString With objCmd .Connection = objConn .CommandText = strSQL .CommandType = CommandType.Text End With dtAdapter.SelectCommand = objCmd dtAdapter.Fill(ds) '*** BindData to DataGrid ***' myDataGrid.DataSource = ds myDataGrid.DataBind() dtAdapter = Nothing objConn.Close() objConn = Nothing End Sub Sub ShowPageCommand(sender As Object, e As DataGridPageChangedEventArgs) myDataGrid.CurrentPageIndex = e.NewPageIndex BindData() End Sub Sub SortCommand(s As Object, e As DataGridSortCommandEventArgs) strFields = e.SortExpression BindData() End Sub Private Sub myDataGrid_ItemDataBound(sender As Object, e As DataGridItemEventArgs) '*** CustomerID ***' Dim lblCustomerID As Label = CType(e.Item.FindControl("lblCustomerID"),Label) IF Not IsNothing(lblCustomerID) Then lblCustomerID.Text = e.Item.DataItem("CustomerID") End IF '*** Name ***' Dim lblName As Label = CType(e.Item.FindControl("lblName"),Label) IF Not IsNothing(lblName) Then lblName.Text = e.Item.DataItem("Name") End IF '*** Email ***' Dim lblEmail As Label = CType(e.Item.FindControl("lblEmail"),Label) IF Not IsNothing(lblEmail) Then lblEmail.Text = e.Item.DataItem("Email") End IF '*** CountryCode ***' Dim lblCountryCode As Label = CType(e.Item.FindControl("lblCountryCode"),Label) IF Not IsNothing(lblCountryCode) Then lblCountryCode.Text = e.Item.DataItem("CountryCode") End IF '*** Budget ***' Dim lblBudget As Label = CType(e.Item.FindControl("lblBudget"),Label) IF Not IsNothing(lblBudget) Then lblBudget.Text = FormatNumber(e.Item.DataItem("Budget"),2) End IF '*** Used ***' Dim lblUsed As Label = CType(e.Item.FindControl("lblUsed"),Label) IF Not IsNothing(lblUsed) Then lblUsed.Text = FormatNumber(e.Item.DataItem("Used"),2) End IF End Sub </script> <html> <head> <title>ShotDev.Com Tutorial</title> </head> <body> <form id="form1" runat="server"> <asp:DataGrid id="myDataGrid" runat="server" PageSize="2" onSortCommand="SortCommand" OnPageIndexChanged="ShowPageCommand" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" onItemDataBound="myDataGrid_ItemDataBound"> <Columns> <asp:TemplateColumn SortExpression="CustomerID" HeaderText="CustomerID"> <ItemTemplate> <asp:Label id="lblCustomerID" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn SortExpression="Name" HeaderText="Name"> <ItemTemplate> <asp:Label id="lblName" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn SortExpression="Email" HeaderText="Email"> <ItemTemplate> <asp:Label id="lblEmail" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn SortExpression="CountryCode" HeaderText="CountryCode"> <ItemTemplate> <asp:Label id="lblCountryCode" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn SortExpression="Budget" HeaderText="Budget"> <ItemTemplate> <asp:Label id="lblBudget" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn SortExpression="Used" HeaderText="Used"> <ItemTemplate> <asp:Label id="lblUsed" runat="server"></asp:Label> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> </form> </body> </html>
Create a asp.net file and save to path root-path/dotnet/
Run
http://localhost/dotnet/DataGridAllowSortingAllowPaging.aspx
Screenshot