GridView.Sort(String, SortDirection) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Sortuje kontrolkę GridView na podstawie określonego wyrażenia sortowania i kierunku.
public:
virtual void Sort(System::String ^ sortExpression, System::Web::UI::WebControls::SortDirection sortDirection);
public virtual void Sort (string sortExpression, System.Web.UI.WebControls.SortDirection sortDirection);
abstract member Sort : string * System.Web.UI.WebControls.SortDirection -> unit
override this.Sort : string * System.Web.UI.WebControls.SortDirection -> unit
Public Overridable Sub Sort (sortExpression As String, sortDirection As SortDirection)
Parametry
- sortDirection
- SortDirection
SortDirection Jedna z wartości.
Wyjątki
Kontrolka GridView jest powiązana z kontrolką źródła danych, ale DataSourceView jest skojarzona ze źródłem danych .null
Przykłady
W poniższym przykładzie pokazano, jak za pomocą Sort metody programowo sortować kontrolkę GridView według wielu kolumn.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void SortButton_Click(Object sender, EventArgs e)
{
String expression = "";
SortDirection direction;
// Create the sort expression from the values selected
// by the user from the DropDownList controls. Multiple
// columns can be sorted by creating a sort expression
// that contains a comma-separated list of field names.
expression = SortList1.SelectedValue + "," + SortList2.SelectedValue;
// Determine the sort direction. The sort direction
// applies only to the second column sorted.
switch (DirectionList.SelectedValue)
{
case "Ascending":
direction = SortDirection.Ascending;
break;
case "Descending":
direction = SortDirection.Descending;
break;
default:
direction = SortDirection.Ascending;
break;
}
// Use the Sort method to programmatically sort the GridView
// control using the sort expression and direction.
CustomersGridView.Sort(expression, direction);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView Sort Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridView Sort Example</h3>
<table>
<tr>
<td>
Sort by:
<asp:dropdownlist ID="SortList1"
runat="server">
<asp:listitem Selected="true">CustomerID</asp:listitem>
<asp:listitem>CompanyName</asp:listitem>
<asp:listitem>Address</asp:listitem>
<asp:listitem>City</asp:listitem>
<asp:listitem>PostalCode</asp:listitem>
<asp:listitem>Country</asp:listitem>
</asp:dropdownlist>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
Then by:
<asp:dropdownlist ID="SortList2"
runat="server">
<asp:listitem Selected="true">CustomerID</asp:listitem>
<asp:listitem>CompanyName</asp:listitem>
<asp:listitem>Address</asp:listitem>
<asp:listitem>City</asp:listitem>
<asp:listitem>PostalCode</asp:listitem>
<asp:listitem>Country</asp:listitem>
</asp:dropdownlist>
</td>
<td>
Sort order:
</td>
<td>
<asp:radiobuttonlist id="DirectionList"
runat="server">
<asp:listitem selected="true">Ascending</asp:listitem>
<asp:listitem>Descending</asp:listitem>
</asp:radiobuttonlist>
</td>
</tr>
</table>
<asp:button id="SortButton"
text="Sort"
onclick="SortButton_Click"
runat="Server"/>
<br/>
<hr/>
<br/>
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSource"
autogeneratecolumns="true"
emptydatatext="No data available."
allowpaging="true"
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="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 SortButton_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim expression As String = ""
Dim direction As SortDirection
' Create the sort expression from the values selected
' by the user from the DropDownList controls. Multiple
' columns can be sorted by creating a sort expression
' that contains a comma-separated list of field names.
expression = SortList1.SelectedValue & "," & SortList2.SelectedValue
' Determine the sort direction. The sort direction
' applies only to the second column sorted.
Select Case DirectionList.SelectedValue
Case "Ascending"
direction = SortDirection.Ascending
Case "Descending"
direction = SortDirection.Descending
Case Else
direction = SortDirection.Ascending
End Select
' Use the Sort method to programmatically sort the GridView
' control using the sort expression and direction.
CustomersGridView.Sort(expression, direction)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridView Sort Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>GridView Sort Example</h3>
<table>
<tr>
<td>
Sort by:
<asp:dropdownlist ID="SortList1"
runat="server">
<asp:listitem Selected="true">CustomerID</asp:listitem>
<asp:listitem>CompanyName</asp:listitem>
<asp:listitem>Address</asp:listitem>
<asp:listitem>City</asp:listitem>
<asp:listitem>PostalCode</asp:listitem>
<asp:listitem>Country</asp:listitem>
</asp:dropdownlist>
</td>
<td colspan="2">
</td>
</tr>
<tr>
<td>
Then by:
<asp:dropdownlist ID="SortList2"
runat="server">
<asp:listitem Selected="true">CustomerID</asp:listitem>
<asp:listitem>CompanyName</asp:listitem>
<asp:listitem>Address</asp:listitem>
<asp:listitem>City</asp:listitem>
<asp:listitem>PostalCode</asp:listitem>
<asp:listitem>Country</asp:listitem>
</asp:dropdownlist>
</td>
<td>
Sort order:
</td>
<td>
<asp:radiobuttonlist id="DirectionList"
runat="server">
<asp:listitem selected="true">Ascending</asp:listitem>
<asp:listitem>Descending</asp:listitem>
</asp:radiobuttonlist>
</td>
</tr>
</table>
<asp:button id="SortButton"
text="Sort"
onclick="SortButton_Click"
runat="Server"/>
<br/>
<hr/>
<br/>
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSource"
autogeneratecolumns="true"
emptydatatext="No data available."
allowpaging="true"
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>
Uwagi
Sort Użyj metody , aby programowo posortować kontrolkę GridView przy użyciu określonego wyrażenia sortowania i kierunku. Wyrażenie sortowania określa kolumnę lub kolumny do sortowania. Aby posortować wiele kolumn, utwórz wyrażenie sortowania zawierające rozdzielaną przecinkami listę nazw pól. Kierunek sortowania wskazuje, czy sortowanie jest wykonywane w kolejności rosnącej, czy malejącej. Ta metoda jest często używana, gdy trzeba sortować kontrolkę GridView spoza kontrolki, na przykład z innej kontrolki na stronie. Ta metoda jest również często używana do programowego ustawiania domyślnej kolejności sortowania dla kontrolki GridView podczas pierwszego renderowania. Wywołanie tej metody powoduje również wywołanie zdarzeń Sorted i Sorting .