- - PR -
ASP.NET(c#):DataGridでTemplateColumnを使うとソートができない
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-11-05 19:45
ASP.NET(c#)ので、DataGridのページング処理と並び替えの連動で一覧を作っています。
DataGridにTemplateColumnを追加してソートを行いたいと思っていますがうまくいきません。 BoundColumnだとうまくいくんですが・・・ 今回は、1つのセルを2段に仕切ってデータを2つ出力しているのでTemplateColumnを使っています。 どなたかご存知の方がいらっしゃいましたら御教授下さい。 下記はソースです。 ヘッダ「いいい」のデータでソートしたいと思っています。 (aspxファイル) <asp:datagrid id="dgrIchiran" runat="server" OnSortCommand="dgrIchiran_sort" AllowSorting="True" PageSize="10" AutoGenerateColumns="False" OnPageIndexChanged="dgrIchiran_paging" AllowPaging="True"> <Columns> <asp:TemplateColumn SortExpression="dataI"> <HeaderStyle HorizontalAlign="Center"></HeaderStyle> <HeaderTemplate> <asp:LinkButton id="btnA" CommandName="sort" Runat="server">あああ</asp:LinkButton> <HR> <asp:LinkButton id="btnI" CommandName="sort" Runat="server">いいい</asp:LinkButton> </HeaderTemplate> <ItemTemplate> <LABEL id="lblA" runat="server"> <%# DataBinder.Eval(Container.DataItem, "[\\"dataA\\"]") %> </LABEL> <HR> <LABEL id="lblI" runat="server"> <%# DataBinder.Eval(Container.DataItem, "[\\"dataI\\"]") %> </LABEL> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:datagrid> (コードビハインドファイル) //DataGridのソート時の処理 public void dgrIchiran_sort (object sender, DataGridSortCommandEventArgs e) { DataTable dt = GetTable(); DataView dv = dt.DefaultView; //ソート dv.Sort = e.SortExpression; //1ページ目を表示 dgrIchiran.CurrentPageIndex = 0; //バインド dgrIchiran.DataSource = dv; dgrIchiran.DataBind(); } |
|
投稿日時: 2003-11-10 13:06
DataGridで用意されている並べ替え機能では
うまくいきませんでしたので 違う方法で解決させました。 ありがとうございました。 |
1