2010-02-09 32 views
1

我已經授予存儲過程的訪問權限,我無法編輯它。 這個存儲過程返回一個帶有2列的表,我在這個存儲過程中使用SQLDataSource設置了一個GridView的數據源。但是我希望這個GridView能夠在GridView加載時對特定的列進行排序。在DataBound之後對GridView中的特定列進行排序

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" 
         DataSourceID="SqlDataSource2" ForeColor="Black" 
         Width="58%" Height="125px" AllowPaging="True" AllowSorting="True" 
         PageSize="5" > 
         <Columns> 
          <asp:BoundField DataField="DateOccur" HeaderText="Login Date" 
           SortExpression="DateOccur" /> 
          <asp:BoundField DataField="TotalMinutesPlayed" HeaderText="Total Minutes" 
           SortExpression="TotalMinutesPlayed" /> 
         </Columns> 
         <AlternatingRowStyle BackColor="#EFEFEF" /> 
        </asp:GridView> 

謝謝!〜

回答

2

您也可以使用Gridview.Sort方法 See Here.

+1

嗨在什麼事件我應該把這種方法?我在DataBound和Sorting事件中嘗試過它,但不起作用:) – Sherwin 2010-02-09 03:25:53

+0

嘗試頁面加載事件 – dugas 2010-02-09 04:33:03

2

如果無法通過編輯SQL自行解決它,你可以通過編程由DataView對象綁定到數據源,指定的數據視圖排序表達式排序,並然後將DataGrid綁定到DataView對象。

有關示例代碼的演練,see here

0

我所用的示例代碼我在MSDN上發現了一個稍作修改的版本。

Gridview Sort Example on MSDN

通過結合我發現SortExpression屬性,我可以排序,甚至使用專有的各種要求我的規範的任何列的例子,

相關問題