DataGridPageChangedEventArgs Class
Provides data for the PageIndexChanged event of the DataGrid control. This class cannot be inherited.
Assembly: System.Web (in System.Web.dll)
| Name | Description | |
|---|---|---|
![]() | DataGridPageChangedEventArgs(Object, Int32) | Initializes a new instance of the DataGridPageChangedEventArgs class. |
| Name | Description | |
|---|---|---|
![]() | CommandSource | Gets the source of the command. |
![]() | NewPageIndex | Gets the index of the page selected by the user in the page selection element of the DataGrid control. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | MemberwiseClone() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The PageIndexChanged event is raised when a button in the page selection element of the DataGrid control is clicked.
For a list of initial property values for an instance of DataGridPageChangedEventArgs, see the DataGridPageChangedEventArgs constructor.
For more information about handling events, see NIB: Events and Delegates.
The following code example demonstrates how to specify and code a handler for the PageIndexChanged event. It displays pages on the DataGrid control in 10-item increments.
<%@ Page Language="VB" %> <%@ Import Namespace="System.Data" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Function CreateDataSource() As ICollection ' Create sample data for the DataGrid control. Dim dt As DataTable = New DataTable() Dim dr As DataRow ' Define the columns of the table. dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32))) dt.Columns.Add(New DataColumn("StringValue", GetType(String))) dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double))) ' Populate the table with sample values. Dim i As Integer For i = 0 To 100 dr = dt.NewRow() dr(0) = i dr(1) = "Item " & i.ToString() dr(2) = 1.23 * (i + 1) dt.Rows.Add(dr) Next i Dim dv As DataView = New DataView(dt) Return dv End Function Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) ' Load sample data only once, when the page is first loaded. If Not IsPostBack Then ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End If End Sub Sub Check_Change(ByVal sender As Object, ByVal e As EventArgs) ' Allow or prevent paging depending on the user's selection. ItemsGrid.AllowPaging = AllowPagingCheckBox.Checked() ' Rebind the data to refresh the DataGrid control. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End Sub Sub Grid_Change(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs) ' For the DataGrid control to navigate to the correct page when ' paging is allowed, the CurrentPageIndex property must be updated ' programmatically. This process is usually accomplished in the ' event-handling method for the PageIndexChanged event. ' Set CurrentPageIndex to the page the user clicked. ItemsGrid.CurrentPageIndex = e.NewPageIndex ' Rebind the data to refresh the DataGrid control. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head2" runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <h3>DataGrid AllowPaging Example</h3> <p>Select whether to allow paging in the DataGrid control.<br /> <asp:CheckBox id="AllowPagingCheckBox" Text="Allow paging" AutoPostBack="True" Checked="True" OnCheckedChanged="Check_Change" runat="server" /> </p> <hr /> <asp:Label ID="Label1" runat="server" AssociatedControlID="ItemsGrid" Font-Bold="true">Product List</asp:Label> <asp:DataGrid id="ItemsGrid" runat="server" BorderColor="Gray" BorderWidth="1" CellPadding="3" UseAccessibleHeader="true" AutoGenerateColumns="False" PageSize="10" AllowPaging="True" OnPageIndexChanged="Grid_Change"> <HeaderStyle BackColor="LightBlue" /> <Columns> <asp:BoundColumn DataField="IntegerValue" SortExpression="IntegerValue" ItemStyle-HorizontalAlign="center" HeaderText="Item" /> <asp:BoundColumn DataField="StringValue" HeaderText="Description" ItemStyle-HorizontalAlign="left" SortExpression="StringValue" /> <asp:BoundColumn DataField="CurrencyValue" HeaderText="Price" SortExpression="CurrencyValue" DataFormatString="{0:c}" /> </Columns> <ItemStyle HorizontalAlign="Right" /> </asp:DataGrid> </div> </form> </body> </html>
<%@ Page Language="VB" AutoEventWireup="True" %> <%@ Import Namespace="System.Data" %> <!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" > <script runat="server"> Function CreateDataSource() As ICollection ' Create sample data for the DataGrid control. Dim dt As DataTable = New DataTable() Dim dr As DataRow ' Define the columns of the table. dt.Columns.Add(new DataColumn("IntegerValue", GetType(Int32))) dt.Columns.Add(new DataColumn("StringValue", GetType(String))) dt.Columns.Add(new DataColumn("CurrencyValue", GetType(Double))) ' Populate the table with sample values. Dim i As Integer For i=0 To 100 dr = dt.NewRow() dr(0) = i dr(1) = "Item " & i.ToString() dr(2) = 1.23 * (i + 1) dt.Rows.Add(dr) Next i Dim dv As DataView = New DataView(dt) Return dv End Function Sub Page_Load(sender As Object, e As EventArgs) ' Load sample data only once, when the page is first loaded. If Not IsPostBack Then ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End If ' Manually register the event-handling method for the PageIndexChanged ' event of the DataGrid control. AddHandler ItemsGrid.PageIndexChanged, AddressOf Grid_Change End Sub Sub Check_Change(sender As Object, e As EventArgs) ' Allow or prevent paging depending on the user's selection. If AllowPagingCheckBox.Checked Then ItemsGrid.AllowPaging = True Else ItemsGrid.AllowPaging = False End If ' Re-bind the data to refresh the DataGrid control. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End Sub Sub Grid_Change(sender As Object, e As DataGridPageChangedEventArgs) ' For the DataGrid control to navigate to the correct page when paging is ' allowed, the CurrentPageIndex property must be programmatically updated. ' This process is usually accomplished in the event-handling method for the ' PageIndexChanged event. ' Set CurrentPageIndex to the page the user clicked. ItemsGrid.CurrentPageIndex = e.NewPageIndex ' Re-bind the data to refresh the DataGrid control. ItemsGrid.DataSource = CreateDataSource() ItemsGrid.DataBind() End Sub </script> <head runat="server"> <title>DataGrid PageIndexChanged Example</title> </head> <body> <form id="form1" runat="server"> <h3>DataGrid PageIndexChanged Example</h3> Select whether to allow paging in the DataGrid control. <br /><br /> <b>Product List</b> <asp:DataGrid id="ItemsGrid" BorderColor="black" BorderWidth="1" CellPadding="3" AutoGenerateColumns="False" PageSize="10" AllowPaging="True" runat="server"> <HeaderStyle BackColor="#00aaaa"> </HeaderStyle> <Columns> <asp:BoundColumn DataField="IntegerValue" SortExpression="IntegerValue" HeaderText="Item"/> <asp:BoundColumn DataField="StringValue" SortExpression="StringValue" HeaderText="Description"/> <asp:BoundColumn DataField="CurrencyValue" HeaderText="Price" SortExpression="CurrencyValue" DataFormatString="{0:c}"> <ItemStyle HorizontalAlign="Right"> </ItemStyle> </asp:BoundColumn> </Columns> </asp:DataGrid> <hr /> <table cellpadding="5"> <tr> <td> <asp:CheckBox id="AllowPagingCheckBox" Text="Allow paging" AutoPostBack="True" Checked="True" OnCheckedChanged="Check_Change" runat="server"/> </td> </tr> </table> </form> </body> </html>
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=vb)
.jpeg?cs-save-lang=1&cs-lang=vb)
.jpeg?cs-save-lang=1&cs-lang=vb)