GridViewPageEventArgs クラス
アセンブリ: System.Web (system.web.dll 内)


GridView コントロールは、コントロール内のページャ ボタン (CommandName プロパティが "Page" に設定されたボタン) がクリックされたときに、GridView コントロールでページング操作を処理する前に PageIndexChanging イベントを発生させます。これにより、このイベントが発生するたびにカスタム ルーチン (ページング操作のキャンセルなど) を実行するイベント処理メソッドを提供できます。
![]() |
---|
GridViewPageEventArgs オブジェクトがイベント処理メソッドに渡されることにより、ユーザーが選択したページのインデックスを確認したり、ページング操作をキャンセルする必要があることを示したりできます。ページング操作をキャンセルするには、GridViewPageEventArgs オブジェクトの CancelEventArgs.Cancel プロパティを true に設定します。
イベント処理の詳細については、「イベントの利用」を参照してください。
GridViewPageEventArgs のインスタンスの初期プロパティ値の一覧については、GridViewPageEventArgs コンストラクタのトピックを参照してください。

イベント処理メソッドに渡された GridViewPageEventArgs オブジェクトを使用して、ユーザーが選択したページのインデックスを確認したり、ページング操作をキャンセルしたりする方法を次の例に示します。
<%@ Page language="VB" %> <script runat="server"> Sub CustomersGridView_PageIndexChanging(ByVal sender As Object, ByVal e As GridViewPageEventArgs) ' Cancel the paging operation if the user attempts to navigate ' to another page while the GridView control is in edit mode. If CustomersGridView.EditIndex <> -1 Then ' Use the Cancel property to cancel the paging operation. e.Cancel = True ' Display an error message. Dim newPageNumber As Integer = e.NewPageIndex + 1 Message.Text = "Please update the record before moving to page " & _ newPageNumber.ToString() & "." Else ' Clear the error message. Message.Text = "" End If End Sub Sub CustomersGridView_RowCancelingEdit(ByVal sender As Object, ByVal e As GridViewCancelEditEventArgs) ' Clear the error message. Message.Text = "" End Sub </script> <html> <body> <form runat="server"> <h3>GridView PageIndexChanging Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:gridview id="CustomersGridView" datasourceid="CustomersSource" autogeneratecolumns="true" emptydatatext="No data available." allowpaging="true" autogenerateeditbutton="true" datakeynames="CustomerID" onpageindexchanging="CustomersGridView_PageIndexChanging" onrowcancelingedit="CustomersGridView_RowCancelingEdit" runat="server"> <pagersettings mode="Numeric" position="Bottom" pagebuttoncount="10"/> <pagerstyle backcolor="LightBlue"/> </asp:gridview> <!-- 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="CustomersSource" selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]" updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
<%@ Page language="C#" %> <script runat="server"> void CustomersGridView_PageIndexChanging(Object sender, GridViewPageEventArgs e) { // Cancel the paging operation if the user attempts to navigate // to another page while the GridView control is in edit mode. if (CustomersGridView.EditIndex != -1) { // Use the Cancel property to cancel the paging operation. e.Cancel = true; // Display an error message. int newPageNumber = e.NewPageIndex + 1; Message.Text = "Please update the record before moving to page " + newPageNumber.ToString() + "."; } else { // Clear the error message. Message.Text = ""; } } void CustomersGridView_RowCancelingEdit(Object sender, GridViewCancelEditEventArgs e) { // Clear the error message. Message.Text = ""; } </script> <html> <body> <form runat="server"> <h3>GridView PageIndexChanging Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:gridview id="CustomersGridView" datasourceid="CustomersSource" autogeneratecolumns="true" emptydatatext="No data available." allowpaging="true" autogenerateeditbutton="true" datakeynames="CustomerID" onpageindexchanging="CustomersGridView_PageIndexChanging" onrowcancelingedit="CustomersGridView_RowCancelingEdit" runat="server"> <pagersettings mode="Numeric" position="Bottom" pagebuttoncount="10"/> <pagerstyle backcolor="LightBlue"/> </asp:gridview> <!-- 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="CustomersSource" selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]" updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>


System.EventArgs
System.ComponentModel.CancelEventArgs
System.Web.UI.WebControls.GridViewPageEventArgs


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- GridViewPageEventArgs クラスのページへのリンク