GridViewSortEventHandler デリゲート
アセンブリ: System.Web (system.web.dll 内)

/** @delegate */ public delegate void GridViewSortEventHandler ( Object sender, GridViewSortEventArgs e )

Sorting イベントは、列を並べ替えるためのハイパーリンクがクリックされた場合に、GridView コントロールで並べ替え操作が処理される前に発生します。これにより、このイベントが発生するたびにカスタム ルーチン (並べ替え操作をキャンセルするなど) を実行するイベント処理メソッドを提供できます。
GridViewSortEventHandler デリゲートを作成する場合は、イベントを処理するメソッドを識別してください。イベントをイベント ハンドラに関連付けるには、デリゲートのインスタンスをイベントに追加します。デリゲートを削除しない限り、そのイベントが発生すると常にイベント ハンドラが呼び出されます。イベント ハンドラ デリゲートの詳細については、「イベントとデリゲート」を参照してください。

GridViewSortEventHandler デリゲートを、プログラムによって GridView コントロールの Sorting イベントに追加する方法を次の例に示します。
<%@ Page language="VB" %> <script runat="server"> Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) ' Create a new GridView object. Dim authorGridView As GridView = New GridView ' Set the GridView object's properties. authorGridView.ID = "AuthorGridView" authorGridView.DataSourceID = "AuthorsSqlDataSource" authorGridView.AutoGenerateColumns = True authorGridView.AllowSorting = True ' Programmatically register the event-handling methods. AddHandler authorGridView.Sorting, AddressOf AuthorsGridView_Sorting ' Add the GridView object to the Controls collection ' of the PlaceHolder control. GridViewPlaceHolder.Controls.Add(authorGridView) End Sub Sub AuthorsGridView_Sorting(ByVal sender As Object, ByVal e As GridViewSortEventArgs) ' Cancel the sorting operation if the user attempts to sort ' the Contract column. If e.SortExpression = "contract" Then e.Cancel = True Message.Text = "You cannot sort the Contract column." Else ' Clear the message label. Message.Text = "" End If End Sub </script> <html> <body> <form runat="server"> <h3>GridViewSortEventHandler Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:placeholder id="GridViewPlaceHolder" runat="Server"/> <!-- This example uses Microsoft SQL Server and connects --> <!-- to the Pubs sample database. --> <asp:sqldatasource id="AuthorsSqlDataSource" selectcommand="SELECT [au_id], [au_lname], [au_fname], [address], [city], [state], [zip], [contract] FROM [authors]" updatecommand="UPDATE authors SET au_lname=@au_lname, au_fname=@au_fname, address=@address, city=@city, state=@state, zip=@zip, contract=@contract WHERE (authors.au_id = @au_id)" connectionstring="server=localhost;database=pubs;integrated security=SSPI" runat="server"> </asp:sqldatasource> </form> </body> </html>
<%@ Page language="C#" %> <script runat="server"> void Page_Load(Object sender, EventArgs e) { // Create a new GridView object. GridView authorGridView = new GridView(); // Set the GridView object's properties. authorGridView.ID = "AuthorGridView"; authorGridView.DataSourceID = "AuthorsSqlDataSource"; authorGridView.AutoGenerateColumns = true; authorGridView.AllowSorting = true; // Programmatically register the event-handling methods. authorGridView.Sorting += new GridViewSortEventHandler(this.AuthorsGridView_Sorting); // Add the GridView object to the Controls collection // of the PlaceHolder control. GridViewPlaceHolder.Controls.Add(authorGridView); } void AuthorsGridView_Sorting(Object sender, GridViewSortEventArgs e) { // Cancel the sorting operation if the user attempts to sort // the Contract column. if(e.SortExpression == "contract") { e.Cancel = true; Message.Text = "You cannot sort the Contract column."; } else { // Clear the message label. Message.Text = ""; } } </script> <html> <body> <form runat="server"> <h3>GridViewSortEventHandler Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:placeholder id="GridViewPlaceHolder" runat="Server"/> <!-- This example uses Microsoft SQL Server and connects --> <!-- to the Pubs sample database. --> <asp:sqldatasource id="AuthorsSqlDataSource" selectcommand="SELECT [au_id], [au_lname], [au_fname], [address], [city], [state], [zip], [contract] FROM [authors]" updatecommand="UPDATE authors SET au_lname=@au_lname, au_fname=@au_fname, address=@address, city=@city, state=@state, zip=@zip, contract=@contract WHERE (authors.au_id = @au_id)" connectionstring="server=localhost;database=pubs;integrated security=SSPI" runat="server"> </asp:sqldatasource> </form> </body> </html>
GridViewSortEventHandler デリゲートを、宣言によって GridView コントロールの Sorting イベントに追加する方法を次の例に示します。
<%@ Page language="VB" %> <script runat="server"> Sub CustomersGridView_Sorting(sender As Object, e As GridViewSortEventArgs) ' Cancel the sorting operation if the user attempts ' to sort by address. If e.SortExpression = "Address" Then e.Cancel = True Message.Text = "You cannot sort by address." SortInformationLabel.Text = "" Else Message.Text = "" End If End Sub Sub CustomersGridView_Sorted(ByVal sender As Object, ByVal e As EventArgs) ' Display the sort expression and sort direction. SortInformationLabel.Text = "Sorting by " & _ CustomersGridView.SortExpression.ToString() & _ " in " & CustomersGridView.SortDirection.ToString() & _ " order." End Sub </script> <html> <body> <form runat="server"> <h3>GridView Sorted and Sorting Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:label id="SortInformationLabel" forecolor="Navy" runat="server"/> <br/> <asp:gridview id="CustomersGridView" datasourceid="CustomersSource" autogeneratecolumns="true" allowpaging="true" emptydatatext="No data available." allowsorting="true" onsorting="CustomersGridView_Sorting" onsorted="CustomersGridView_Sorted" runat="server"> </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]" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
<%@ Page language="C#" %> <script runat="server"> void CustomersGridView_Sorting(Object sender, GridViewSortEventArgs e) { // Cancel the sorting operation if the user attempts // to sort by address. if (e.SortExpression == "Address") { e.Cancel = true; Message.Text = "You cannot sort by address."; SortInformationLabel.Text = ""; } else { Message.Text = ""; } } void CustomersGridView_Sorted(Object sender, EventArgs e) { // Display the sort expression and sort direction. SortInformationLabel.Text = "Sorting by " + CustomersGridView.SortExpression.ToString() + " in " + CustomersGridView.SortDirection.ToString() + " order."; } </script> <html> <body> <form runat="server"> <h3>GridView Sorting Example</h3> <asp:label id="Message" forecolor="Red" runat="server"/> <br/> <asp:label id="SortInformationLabel" forecolor="Navy" runat="server"/> <br/> <asp:gridview id="CustomersGridView" datasourceid="CustomersSource" autogeneratecolumns="true" allowpaging="true" emptydatatext="No data available." allowsorting="true" onsorting="CustomersGridView_Sorting" onsorted="CustomersGridView_Sorted" runat="server"> </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]" connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からGridViewSortEventHandler デリゲートを検索する場合は、下記のリンクをクリックしてください。

- GridViewSortEventHandler デリゲートのページへのリンク