亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

麻煩幫忙解釋一下關于SortExpression的用法問題

麻煩幫忙解釋一下關于SortExpression的用法問題

素胚勾勒不出你 2021-11-25 15:15:04
請教一下,GridView里面的每個BoundField里面都有一個SortExpression,那排序的時候是按照哪一個表達式去排啊?其實我不大明白SortExpression有什么用的...是不是類似于字典那樣的排序,每個表達式都有用的?還是只有其中一個表達式有用?
查看完整描述

2 回答

?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

排序字段,點擊定義了該屬性的字段名,可以獲得該字段的排序規則,并產生排序事件,修改dataset(數據源)的視圖狀態,以該字段為規則進行排序
還有同時常用到的屬性:SortDirection

下面這個例子可以很好的看出它的用法:

protected void kjkm_dg_SortCommand(object source, DataGridSortCommandEventArgs e)
{
string SortExpression = e.SortExpression.ToString(); //獲得當前排序表達式
string SortDirection = "ASC"; //為排序方向變量賦初值
if (SortExpression == kjkm_dg.Attributes["SortExpression"]) //如果為當前排序列
{
SortDirection = (kjkm_dg.Attributes["SortDirection"].ToString() == SortDirection ? "DESC" : "ASC"); //獲得下一次的排序狀態
}
kjkm_dg.Attributes["SortExpression"] = SortExpression;
kjkm_dg.Attributes["SortDirection"] = SortDirection;
mikecatbind();
}



查看完整回答
反對 回復 2021-11-28
?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

GridView.SortExpression 屬性 是用來獲取與正在排序的列關聯的排序表達式。

下面是例子你看看吧。
<%@ Page language="C#" %>

<script runat="server">

void CustomersGridView_RowCreated(Object sender, GridViewRowEventArgs e)
{

// Use the RowType property to determine whether the
// row being created is the header row.
if (e.Row.RowType == DataControlRowType.Header)
{
// Call the GetSortColumnIndex helper method to determine
// the index of the column being sorted.
int sortColumnIndex = GetSortColumnIndex();

if (sortColumnIndex != -1)
{
// Call the AddSortImage helper method to add
// a sort direction image to the appropriate
// column header.
AddSortImage(sortColumnIndex, e.Row);
}
}
}

// This is a helper method used to determine the index of the
// column being sorted. If no column is being sorted, -1 is returned.
int GetSortColumnIndex()
{

// Iterate through the Columns collection to determine the index
// of the column being sorted.
foreach (DataControlField field in CustomersGridView.Columns)
{
if (field.SortExpression == CustomersGridView.SortExpression)
{
return CustomersGridView.Columns.IndexOf(field);
}
}

return -1;
}

// This is a helper method used to add a sort direction
// image to the header of the column being sorted.
void AddSortImage(int columnIndex, GridViewRow headerRow)
{

// Create the sorting image based on the sort direction.
Image sortImage = new Image();
if (CustomersGridView.SortDirection == SortDirection.Ascending)
{
sortImage.ImageUrl = "~/Images/Ascending.jpg";
sortImage.AlternateText = "Ascending Order";
}
else
{
sortImage.ImageUrl = "~/Images/Descending.jpg";
sortImage.AlternateText = "Descending Order";
}

// Add the image to the appropriate header cell.
headerRow.Cells[columnIndex].Controls.Add(sortImage);

}

</script>

<html>
<body>
<form runat="server">

<h3>GridView AllowSorting Example</h3>

<asp:gridview id="CustomersGridView"
datasourceid="CustomersSource"
autogeneratecolumns="false"
emptydatatext="No data available."
allowsorting="true"
onrowcreated="CustomersGridView_RowCreated"
runat="server">

<columns>
<asp:boundfield datafield="CustomerID"
headertext="Customer ID"
headerstyle-wrap="false"
sortexpression="CustomerID"/>
<asp:boundfield datafield="CompanyName"
headertext="CompanyName"
headerstyle-wrap="false"
sortexpression="CompanyName"/>
<asp:boundfield datafield="Address"
headertext="Address"
headerstyle-wrap="false"
sortexpression="Address"/>
<asp:boundfield datafield="City"
headertext="City"
headerstyle-wrap="false"
sortexpression="City"/>
<asp:boundfield datafield="PostalCode"
headertext="Postal Code"
headerstyle-wrap="false"
sortexpression="PostalCode" />
<asp:boundfield datafield="Country"
headertext="Country"
headerstyle-wrap="false"
sortexpression="Country"/>
</columns>

</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>



查看完整回答
反對 回復 2021-11-28
  • 2 回答
  • 0 關注
  • 549 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號