主頁(yè) > 知識(shí)庫(kù) > ASP.NET4 GridView的四種排序樣式詳解

ASP.NET4 GridView的四種排序樣式詳解

熱門(mén)標(biāo)簽:百度AI接口 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 人工智能 電商新玩法 客戶服務(wù) 電銷(xiāo)業(yè)務(wù) 國(guó)美全國(guó)運(yùn)營(yíng)中心 網(wǎng)站排名優(yōu)化

與ASP.NET 的其他Web控件一能夠,Gridview控件擁有很多不同的CSS樣式屬性設(shè)置,包括象CssClass,Font字體,F(xiàn)oreColor,BackColor,BackColor, Width, Height等等。Gridview還包括了一些應(yīng)用在表格的行上的樣式屬性,比如RowStyle, AlternatingRowStyle, HeaderStyle,和PagerStyle,它們都提供了象CssClass和Font這些基本的屬性設(shè)置。 

在 ASP.NET 4.0中的Gridview控件中,新增加了四個(gè)樣式屬性:SortedAscendingHeaderStlye,SortedAscendingCellStlye,SortedDescendingHeaderStyle 和SortedDescendingCellStyle。這四個(gè)屬性有點(diǎn)像以前的RowStyle和HeaderStyle樣式屬性,但它們是應(yīng)用在 gridview的列的,而不是行。當(dāng)GridView需要排序的時(shí)候,這些屬性才起作用,如果當(dāng)gridview需要按升序排序的話,那么 SortedAscendingHeaderStyle和SortedAscendingCellStyle屬性定義了數(shù)據(jù)排序時(shí)的樣式風(fēng)格。如果 gridview是降序排序時(shí),SortedDescendingHeaderStyle和SortedDescendingCellStyle屬性則定義了排序時(shí)的樣式風(fēng)格。 

這四個(gè)新的特性使在排序的時(shí)候,更容易定制數(shù)據(jù)排序時(shí)列的外觀樣式。這些屬性與CSS樣式搭配使用的話,可以在表格排序時(shí)增加向上的箭頭和向下的箭頭,以表明當(dāng)前是按升序還是降序排序。本文將介紹如何使用這四個(gè)新的屬性的樣式。 

GridView中的排序回顧 

在Gridview中默認(rèn)是文本的方式顯示每一列的列頭的。要排序的話,必須首先設(shè)置Gridview的AllowSorting屬性,這將使 Gridview將要排序的列以鏈接的方式展現(xiàn),當(dāng)用戶點(diǎn)擊時(shí),就會(huì)觸發(fā)排序的事件。如果GridView綁定到數(shù)據(jù)源控件了,則你不必編寫(xiě)任何代碼去處理排序,一切都是自動(dòng)完成的。 

從用戶的角度來(lái)看,點(diǎn)擊標(biāo)題行中的排序列一下,則會(huì)讓表格中的該列數(shù)據(jù)以升序排序,同樣再點(diǎn)擊一下,則以降序排序。遺憾的是,在以往asp.net 中的GridView不提供任何的方法以顯示給用戶看,當(dāng)前的排序列是按升序排序還是以降序排序。在asp.net 4.0之前,要實(shí)現(xiàn)的唯一方法只有編寫(xiě)一些代碼了,使用Gridview增加SortAscendingStyle 和SortDescendingStyle兩個(gè)屬性,并且使用了CSS去模擬畫(huà)出兩個(gè)上下的箭頭。 

而在ASP.NET 4.0中,已經(jīng)內(nèi)置了這樣的功能了,下面講解下。 

新的排序相關(guān)樣式屬性 

ASP.NET 4.0中新增的4個(gè)排序相關(guān)的屬性如下: 

• SortedAscendingHeaderStyle 當(dāng)Gridview以升序排列時(shí),定義了排序列的表頭樣式。 

• SortedAscendingCellStyle 當(dāng)Gridview以升序排列時(shí),定義了要排序的數(shù)據(jù)列的樣式。 

• SortedDescendingHeaderStyle 當(dāng)Gridview以降序排列時(shí),定義了排序列的表頭樣式。 

• SortedDescendingCellStyle 當(dāng)Gridview以降序排列時(shí),定義了要排序的數(shù)據(jù)列的樣式。 

有了這些屬性,在排序時(shí),只需要簡(jiǎn)單對(duì)它們進(jìn)行設(shè)置就可以了,比如下面的例子中,簡(jiǎn)單設(shè)置了SortedAscendingCellStyle屬性和SortedDescendingCellStyle的子樣式背景顏色為黃色,馬上就可以看到效果了:

asp:GridView ID="..." runat="server" AutoGenerateColumns="False" AllowSorting="true" 
   ... 
   SortedAscendingCellStyle-BackColor="Yellow" 
   SortedDescendingCellStyle-BackColor="Yellow"> 
  ... 
/asp:GridView>

 
 
當(dāng)然,為了觀察方便,可以設(shè)置 SortedAscendingCellStyle-BackColor和SortedDescendingCellStyle-BackColor為不同的顏色則可看到更清晰的效果。 
為排序列加上箭頭 

使用的CSS配合SortedAscendingHeaderStyle和SortedDescendingHeaderStyle兩個(gè)屬性,則為排序列增加向上和向下箭頭的表示排序狀態(tài)是很容易的。首先,你需要找一些向上箭頭或者向下箭頭的圖片,在本文的代碼下載中是有這樣的圖片了。接者需要?jiǎng)?chuàng)建兩個(gè) CSS類(lèi),比如下文中的sortasc—header和sortdesc-header,在這兩個(gè)CSS類(lèi)中需要指定上下箭頭圖片所在的位置,同時(shí)我們要在排序列的右邊定義一個(gè)適當(dāng)?shù)拈g隔位置,以便讓向上和向下箭頭不被排序列所在的表頭的文本所覆蓋。如下所示: 

.sortasc-header A 
{ 
  background:url(URL to up arrow image) right center no-repeat; 
} 

.sortdesc-header A 
{ 
  background:url(URL to down arrow image) right center no-repeat; 
} 

TH A 
{ 
  padding-right: 20px; 
}

 之后我們就可以利用這些樣式了: 

asp:GridView ID="..." runat="server" AutoGenerateColumns="False" AllowSorting="true" 
   ... 
   SortedAscendingHeaderStyle-CssClass="sortasc-header" 
   SortedDescendingHeaderStyle-CssClass="sortdesc-header" 
   SortedAscendingCellStyle-BackColor="Yellow" 
   SortedDescendingCellStyle-BackColor="Yellow"> 
  ... 
/asp:GridView>

 

您可能感興趣的文章:
  • .Net中的集合排序可以這么玩你知道嗎
  • 分享下Asp.Net面試題目及答案集合
  • 關(guān)于.NET的集合總結(jié)
  • asp.net下實(shí)現(xiàn)輸入數(shù)字的冒泡排序
  • .Net集合排序的一種高級(jí)玩法實(shí)例教程

標(biāo)簽:棗莊 廈門(mén) 益陽(yáng) 咸寧 POS機(jī) 攀枝花 南平 拉薩

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP.NET4 GridView的四種排序樣式詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266