GridView.Sort(String, SortDirection) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ordina il GridView controllo in base all'espressione di ordinamento e alla direzione specificati.
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)
Parametri
- sortDirection
- SortDirection
Uno dei SortDirection valori.
Eccezioni
Il GridView controllo è associato a un controllo origine dati, ma l'oggetto DataSourceView associato all'origine dati è null.
Esempio
Nell'esempio seguente viene illustrato come utilizzare il Sort metodo per ordinare a livello di codice il GridView controllo in base a più colonne.
<%@ 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>
Commenti
Utilizzare il Sort metodo per ordinare a livello di codice il GridView controllo utilizzando l'espressione di ordinamento e la direzione specificati. L'espressione di ordinamento specifica la colonna o le colonne con cui eseguire l'ordinamento. Per ordinare più colonne, creare un'espressione di ordinamento contenente un elenco delimitato da virgole di nomi di campo. La direzione di ordinamento indica se l'ordinamento viene eseguito in ordine crescente o decrescente. Questo metodo viene comunemente usato quando è necessario ordinare il GridView controllo dall'esterno del controllo, ad esempio da un controllo diverso nella pagina. Questo metodo viene comunemente usato anche per impostare a livello di codice un ordinamento predefinito per il GridView controllo al primo rendering. La chiamata a questo metodo genera anche gli Sorted eventi e Sorting .