2017-04-26 7 views
0

私は、理想的にはページを更新せずに、ASP.NetのGridViewの列をソートしようとしています。ASP.Net - ポストバックなしでGridViewをソート(汎用リストにバインド)

私のデータはサーバー上の汎用リストにコンパイルされ、コードビハインドのGridViewにバインドされます。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
BackColor="White" CellPadding="3" GridLines="Vertical" AllowSorting="True" 
CssClass="GridViewStyle" EnableSortingAndPagingCallbacks="True" 
AllowPaging="True"> 
    <Columns> 
     <asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID"> 
     </asp:BoundField> 
     <asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title"> 
     </asp:BoundField>        
     <asp:BoundField DataField="Customer" HeaderText="Customer" SortExpression="Customer"> 
     </asp:BoundField>        
    </Columns> 

列ヘッダーのいずれかをクリックしようとしても何も起こりません。

ページを更新せずにこれを行う方法はありますか?

+0

サーバーコンポーネントであるため、asp.net Gridviewコンポーネントではありません。クライアントの動作はほとんどありません。あなたは、javascriptコンポーネントか何かのハイブリッドコンポーネントのいずれかの他のタイプのコンポーネントを使う必要があります。 –

答えて

3

いいえ、ポストバックを発生させずにGridviewだけでこれを行う方法はありません。

あなたは

それとも、ポストバックをマスクするためのUpdatePanelまたはインラインフレームを使用することができます(おそらく、GridViewコントロールを放棄し、代わりにjQuery DataTablesと組み合わせリピータを使用して)JavaScriptでクライアント側でそれを並べ替えることができます。彼らはそれ自身の合併症があり、おそらく最良のアプローチではありません。私は個人的にどちらかを使用して絶対に嫌い、あなたが明確に操縦することを勧めます。

関連する問題