FormViewPageEventArgs.NewPageIndex Property
.NET Framework (current version)
Gets or sets the index of the new page to display in the FormView control.
Assembly: System.Web (in System.Web.dll)
Because the PageIndexChanging event occurs before the FormView control performs the paging operation, the PageIndex property of the control contains the index of the previously displayed page and cannot be used to determine the index of the page selected by the user. Use the NewPageIndex property to determine the page index. You can also use this property to programmatically override the page index selected by the user by setting it to another value.
The following example demonstrates how to use the NewPageIndex property to determine the index of the page selected by the user.
<%@ Page language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Sub EmployeeFormView_PageIndexChanging(ByVal sender As Object, ByVal e As FormViewPageEventArgs) Handles EmployeeFormView.PageIndexChanging ' Cancel the paging operation if the FormView control ' is in edit mode. If EmployeeFormView.CurrentMode = FormViewMode.Edit Then e.Cancel = True ' Display an error message. Dim newPage As Integer = e.NewPageIndex + 1 MessageLabel.Text = "Please update the current record before moving to page " & _ newPage.ToString() & "." End If End Sub Sub EmployeeFormView_ModeChanged(ByVal sender As Object, ByVal e As EventArgs) Handles EmployeeFormView.ModeChanged ' Clear the message label. MessageLabel.Text = "" End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>FormViewPageEventArgs Example</title> </head> <body> <form id="form1" runat="server"> <h3>FormViewPageEventArgs Example</h3> <asp:formview id="EmployeeFormView" datasourceid="EmployeeSource" allowpaging="true" datakeynames="EmployeeID" emptydatatext="No employees found." runat="server"> <itemtemplate> <table> <tr> <td rowspan="6"> <asp:image id="EmployeeImage" imageurl='<%# Eval("PhotoPath") %>' alternatetext='<%# Eval("LastName") %>' runat="server"/> </td> <td colspan="2"> </td> </tr> <tr> <td> <b>Name:</b> </td> <td> <%# Eval("FirstName") %> <%# Eval("LastName") %> </td> </tr> <tr> <td> <b>Title:</b> </td> <td> <%# Eval("Title") %> </td> </tr> <tr> <td> <b>Hire Date:</b> </td> <td> <%# Eval("HireDate","{0:d}") %> </td> </tr> <tr style="height:150" valign="top"> <td> <b>Address:</b> </td> <td> <%# Eval("Address") %><br/> <%# Eval("City") %> <%# Eval("Region") %> <%# Eval("PostalCode") %><br/> <%# Eval("Country") %> </td> </tr> <tr> <td colspan="2"> <asp:linkbutton id="Edit" text="Edit" commandname="Edit" runat="server"/> </td> </tr> </table> </itemtemplate> <edititemtemplate> <table> <tr> <td rowspan="6"> <asp:image id="EmployeeEditImage" imageurl='<%# Eval("PhotoPath") %>' alternatetext='<%# Eval("LastName") %>' runat="server"/> </td> <td colspan="2"> </td> </tr> <tr> <td> <b><asp:Label runat="server" AssociatedControlID="FirstNameUpdateTextBox" Text="Name" />:</b> </td> <td> <asp:textbox id="FirstNameUpdateTextBox" text='<%# Bind("FirstName") %>' accesskey="n" tabindex="1" runat="server"/> <asp:textbox id="LastNameUpdateTextBox" text='<%# Bind("LastName") %>' accesskey="l" tabindex="2" runat="server"/> </td> </tr> <tr> <td> <b><asp:Label runat="server" AssociatedControlID="TitleUpdateTextBox" Text="Title" />:</b> </td> <td> <asp:textbox id="TitleUpdateTextBox" text='<%# Bind("Title") %>' accesskey="t" tabindex="3" runat="server"/> </td> </tr> <tr> <b><asp:Label runat="server" AssociatedControlID="HireDateUpdateTextBox" Text="Hire Date" />:</b> <td> <asp:textbox id="HireDateUpdateTextBox" text='<%# Bind("HireDate", "{0:d}") %>' accesskey="h" tabindex="4" runat="server" /> </td> </tr> <tr style="height:150" valign="top"> <td> <b><asp:Label runat="server" AssociatedControlID="AddressUpdateTextBox" Text="Address" />:</b> </td> <td> <asp:textbox id="AddressUpdateTextBox" text='<%# Bind("Address") %>' accesskey="a" tabindex="5" runat="server"/> <br/> <asp:textbox id="CityUpdateTextBox" text='<%# Bind("City") %>' accesskey="c" tabindex="6" runat="server"/> <asp:textbox id="RegionUpdateTextBox" text='<%# Bind("Region") %>' width="40" accesskey="r" tabindex="7" runat="server"/> <asp:textbox id="PostalCodeUpdateTextBox" text='<%# Bind("PostalCode") %>' width="60" accesskey="p" tabindex="8" runat="server"/> <br/> <asp:textbox id="CountryUpdateTextBox" text='<%# Bind("Country") %>' accesskey="u" tabindex="9" runat="server"/> </td> </tr> <tr> <td colspan="2"> <asp:linkbutton id="UpdateButton" text="Update" tabindex="10" commandname="Update" runat="server"/> <asp:linkbutton id="CancelButton" text="Cancel" tabindex="11" commandname="Cancel" runat="server"/> </td> </tr> </table> </edititemtemplate> </asp:formview> <br/><br/> <asp:label id="MessageLabel" forecolor="Red" runat="server"/> <!-- This example uses Microsoft SQL Server and connects --> <!-- to the Northwind sample database. Use an ASP.NET --> <!-- expression to retrieve the connection string value --> <!-- from the Web.config file. --> <asp:sqldatasource id="EmployeeSource" selectcommand="Select [EmployeeID], [LastName], [FirstName], [Title], [Address], [City], [Region], [PostalCode], [Country], [HireDate], [PhotoPath] From [Employees]" updatecommand="Update [Employees] Set [LastName]=@LastName, [FirstName]=@FirstName, [Title]=@Title, [Address]=@Address, [City]=@City, [Region]=@Region, [PostalCode]=@PostalCode, [Country]=@Country Where [EmployeeID]=@EmployeeID" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
.NET Framework
Available since 2.0
Available since 2.0
Show: