2012-04-19 6 views
0

はここで、ユーザがソートしたい場合、私はDATをしたい私のリピータの負荷は、それが最後のcolumn.Nowでソートされ、私のrepeater.Byのデフォルトのヘッダーテンプレート私のコードリピーターにソートが

<asp:Repeater ID="rpRatesheetDetails" runat="server" 
         onitemcommand="rpRatesheetDetails_ItemCommand" 
         onitemdatabound="rpRatesheetDetails_ItemDataBound"> 
         <HeaderTemplate> 
          <tr> 
           <td width="110" height="25px" class="content"> 
            <table cellpadding="0" cellspacing="1"> 
             <tr> 
              <td style="cursor:pointer;" runat="server" onclick="toggle();"> 
               Carrier 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnCarrierSortAsc" runat="server" ImageUrl="~/Images/Arrow_T.png" ToolTip="Sort Ascending Order" style="display:none;" 
                CommandName="SortCarrierASC" /> 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnCarrierSortDsc" runat="server" ImageUrl="~/Images/Arrow_B.png" ToolTip="Sort Descending Order" style="display:none;" 
                CommandName="SortCarrierDESC" /> 
              </td> 
             </tr> 
            </table> 
           </td> 
           <td width="110" class="content"> 
            <table cellpadding="0" cellspacing="1"> 
             <tr> 
              <td> 
               Date 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnDateSortAsc" runat="server" ImageUrl="~/Images/Arrow_T.png" ToolTip="Sort Ascending Order" style="display:none;" 
                CommandName="SortDateASC" /> 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnDateSortDesc" runat="server" ImageUrl="~/Images/Arrow_B.png" ToolTip="Sort Descending Order" style="display:none;" 
                CommandName="SortDateDESC" /> 
              </td> 
             </tr> 
            </table> 
           </td> 
           <td width="82" class="content"> 
            Call Type 
           </td> 
           <td width="110" class="content"> 
            Format 
           </td> 
           <td width="100" class="content"> 
            <table cellpadding="0" cellspacing="1"> 
             <tr> 
              <td> 
               Status 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnStatusAsc" runat="server" ImageUrl="~/Images/Arrow_T.png" ToolTip="Sort Ascending Order" style="display:none;" 
                CommandName="SortStatusASC" /> 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnStatusDsc" runat="server" ImageUrl="~/Images/Arrow_B.png" ToolTip="Sort Descending Order" style="display:none;" 
                CommandName="SortStatusDESC" /> 
              </td> 
             </tr> 
            </table> 
           </td> 
           <td width="70" class="content"> 
            User 
           </td> 
           <td width="82" class="content"> 
            File Name 
           </td> 
           <td width="110" class="content"> 
            System 
           </td> 
           <td width="110" class="content"> 
            <table cellpadding="0" cellspacing="1"> 
             <tr> 
              <td> 
               No. Of Days 
              </td> 
              <td align="right"> 
               <asp:ImageButton ID="btnDaysAsc" runat="server" ImageUrl="~/Images/Arrow_T.png" ToolTip="Sort Ascending Order" 
                CommandName="SortNoOfDaysASC" /> 
               <asp:ImageButton ID="btnDaysDsc" runat="server" ImageUrl="~/Images/Arrow_B.png" ToolTip="Sort Descending Order" 
                CommandName="SortNoOfDaysDESC" /> 
              </td> 
             </tr> 
            </table> 
           </td> 
          </tr> 
         </HeaderTemplate> 

を超えています他の列でデータ列をクリックする必要があります。ソートアイコンが表示され、レコードがソートされます。このアイコンはItemDataBoundイベントに表示されますが、ヘッダーをクリックしてItemDataBoundイベントを発生させる方法は?

+1

何をしますか? –

+1

任意の列のヘッダーをクリックしたときに発生するリピータのItemDataBoundイベント – Jay

答えて

3

リピータ内のアイテムの順序は、バインドされたコレクション(DataSource)の順序によって異なります。

リピータで並べ替えられたリストを取得するには、バインドする前にDataSourceの項目を並べ替えます。

rpRatesheetDetails_ItemCommandでこれを行います - コマンド名を確認し、それに応じてコレクションをソートしてバインドします。

+0

これで、私はdatを実行できますが、昇順と降順のアイコンを切り替えることはできますが、ItemCommandイベントでは不可能です。 – Jay

+0

ソートページ上のプロパティの方向。 itemDataBoundでそのプロパティをチェックして方向を設定します。 –

+0

@Jay - あなたが使用している注文と方向を知らせるフィールドがあります。 'ItemCommand'イベントハンドラにそれを設定し、ヘッダーテンプレートの' ItemDataBound'イベントハンドラでそれを照会します。 – Oded

関連する問題