2

我正在使用 Telerik RadGrid,并且我有一个数据源,其中我的一列看起来像 hh:mm:ss。当我从数据库加载 RadGrid 的数据源时,我根据 DateTime 列(也包含年、月和日)对结果进行排序(在 SQL 级别),但在网格表示中我只显示 hh:mm:ss . 我在 SQL 级别上的自定义排序运行良好,在给定的页面中,我得到了应该存在的那些元素。但是,当我对本质上是 DateTime 但表示为 hh:mm:ss 的列进行排序时,也会发生默认的 Telerik 排序,它对给定页面中的行进行排序。这是不正确的,因为 '09-12-2012 20:20:20' < '09-13-2012 10:10:10',但 '20:20:20' > '10:10:10'。如何防止我的 RadGrid 的默认 Telerik 排序?我希望其他一切都以同样的方式工作,我只想告诉 Telerik “不要对我的列进行排序,我已经处理了排序事件,谢谢”。我怎样才能做到这一点?

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="true" AllowCustomPaging="true" AllowMultiRowSelection="true">
        <MasterTableView DataKeyNames="ID" ClientDataKeyNames="ID" InsertItemPageIndexAction="ShowItemOnCurrentPage">
            <CommandItemTemplate>
                <div class="cmdItem">
                    <asp:LinkButton ID="btnManageColumns" runat="server" CommandName="Manage Columns" data-link="manage-columns">
                        <img alt="" src="../../Images/Icons/Columns.png" />Manage Columns</asp:LinkButton>
                    <asp:HiddenField ID="hdnSpacer" runat="server" />&#160;&#160;&#160;
                    <asp:LinkButton ID="btnExportPDF" runat="server" CommandName="Export PDF"
                        OnClientClick="return exportGrid('PDF');"><img alt="" src="../../Images/Icons/ExportPDF.png" />Export to PDF</asp:LinkButton>&#160;&#160;&#160;
                    <asp:LinkButton ID="btnSendEmail" runat="server" CommandName="SendEmail" OnClientClick="return exportGrid('PDFEmail');"><img alt="" src="../../Images/Icons/PasswordSetup.png"/>Email</asp:LinkButton>
                </div>
            </CommandItemTemplate>
        </MasterTableView>
        <ClientSettings>
            <ClientEvents OnCommand="gridCommand" />
            <Selecting AllowRowSelect="True" UseClientSelectColumnOnly="true" />
        </ClientSettings>
    </telerik:RadGrid>
4

2 回答 2

2
AllowCustomSorting="true"

此属性应添加到 MasterTableView 标记中。

于 2012-09-15T20:51:13.663 回答
0

您应该能够关闭列的排序,或者如果这是您想要的,则可以关闭整个网格

每列

<Columns>
        <tr:GridBoundColumn DataField="field" HeaderText="Description" 
             AllowSorting="false" />
    </Columns>

整个网格

<telerik:RadGrid ID="RadGridData" runat="server" AllowSorting="false" AllowPaging="true" PageSize="50" OnNeedDataSource="RadGridData_NeedDataSource" OnItemDataBound="RadGridData_ItemDataBound">

对于自定义排序

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="true" AllowCustomPaging="true" AllowMultiRowSelection="true" OnSortCommand="RadGrid1_SortCommand" >
于 2012-09-14T16:12:12.140 回答