Сортировка столбцов шаблона ASP по алфавиту и датам - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть фрагмент кода, который мне нужен для сортировки нескольких столбцов.Заголовки столбцов:

  • Торговая ссылка
  • Дата расчета
  • Валюта
  • Комиссия
  • Статус платежа

Я использую AllowSorting="True" в заголовке asp: datagrid.Затем в каждом из asp: TemplateColumn, который я использую SortExpression="tra_settlement_date"

, я не могу отсортировать столбцы по AZ / 1-10etc для столбцов, от самых новых до самых старых / ZA.Страница думает, но не прибегает к пунктам.

Вот первые два столбца таблицы.

<asp:datagrid
  ID="dgrStatement"
  runat="server"
  runat="server"
  CellPadding="4"
  AllowSorting="True"
  AutoGenerateColumns="False"
  Font-Bold="False"
  Font-Italic="False"
  Font-Names="Calibri"
  Font-Overline="False"
  Font-Strikeout="False"
  Font-Underline="False"
  GridLines="None"
  ForeColor="#333333"
  cssclass="figures statements-tbody statements-tbody-y"
>
  <HeaderStyle Font-Bold="True" HorizontalAlign="Center" />
  <Columns>
    <asp:BoundColumn
      Visible="False"
      DataField="tra_id"
      HeaderText="ID"
    ></asp:BoundColumn>
    <asp:TemplateColumn
      SortExpression="[trade reference]"
      HeaderText="Trade Reference"
    >
      <ItemTemplate>
        <asp:Label
          id="lblRef"
          runat="server"
          Text='<%# DataBinder.Eval(Container, "DataItem.[trade reference]") %>'
        >
        </asp:Label>
      </ItemTemplate>
      <EditItemTemplate>
        <asp:TextBox
          id="Textbox13"
          runat="server"
          Text='<%# DataBinder.Eval(Container, "DataItem.[trade reference]") %>'
        >
        </asp:TextBox>
      </EditItemTemplate>
      <ItemStyle
        Font-Bold="False"
        Font-Italic="False"
        Font-Overline="False"
        Font-Strikeout="False"
        Font-Underline="False"
      />
    </asp:TemplateColumn>
    <asp:TemplateColumn
      SortExpression="tra_settlement_date"
      HeaderText="Settlement Date"
    >
      <ItemTemplate>
        <asp:Label
          id="lblSettlDate"
          runat="server"
          Text='<%# Date.ParseExact(DataBinder.Eval(Container, "DataItem.tra_settlement_date"),"yyyyMMdd", System.Globalization.DateTimeFormatInfo.InvariantInfo).tostring("dd/MM/yyyy") %>'
        >
        </asp:Label>
      </ItemTemplate>
      <EditItemTemplate>
        <asp:TextBox
          id="Textbox1"
          runat="server"
          Text='<%# DataBinder.Eval(Container, "DataItem.tra_settlement_date") %>'
        >
        </asp:TextBox>
      </EditItemTemplate>
    </asp:TemplateColumn>
  </Columns>
</asp:datagrid>

Я что-то упустил?

СпасибоАндрей

...