我有一个带有模板字段列的网格 View 。 TemplateFields 是这样的:

<asp:TemplateField HeaderText="Title" SortExpression="name" meta:resourcekey="BoundFieldResource1">
                                <ItemTemplate>
                                    <asp:Label ID="lblTitle" runat="server"
                                        Text='<%# Bind("Name") %>'
                                        meta:resourcekey="BoundFieldResource1"></asp:Label>
                                </ItemTemplate>

我必须为此列的标题添加一个自定义属性,因此我删除了 HeaderText 并添加了以下内容:
<Headertemplate>
         <asp:Label ID="lblTitleHeading" runat="server" Text="Title" data-custom="tbl-th_title_heading"></asp:Label>
</Headertemplate>

我的问题是,当我这样做时,它会破坏该列的排序,我无法再单击标题对其进行排序,我尝试将其更改为,但没有做任何事情。
我会很感激你的回答。

最佳答案

好的,我刚刚发现了如何做到这一点,我只需要将标签更改为 LinkBut​​ton 并添加 CommandName="Sort"和 CommandArgument="name"(或任何 SortExpression)

<Headertemplate>
     <asp:LinkButton ID="lblTitleHeading" runat="server" Text="Title" data-custom="tbl-th_title_heading" CommandName="Sort" CommandArgument="name"></asp:LinkButton>

关于sorting - 在 TemplateField 中用 Headertemplate 替换 HeaderText,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23745611/

10-11 19:32