我很难在无法排序的列标题上隐藏排序箭头。 我在 HeaderTemplate 部分清楚地定义了我的可排序列,在 ItemTemplate 中定义了不可排序的列,但排序箭头仍然出现在下面定义的第二个 TemplateField 中。我错过了什么?
<asp:GridView ID="gvBeneficiary" runat="server" Width="100%" AllowPaging="True" CssClass="gridheader"
EmptyDataText=""
AutoGenerateColumns="False" PageSize="10"
OnPageIndexChanging="gvBeneficiary_PageIndexChanging" OnRowCommand="gvBeneficiary_RowCommand"
OnRowDataBound="gvBeneficiary_RowDataBound" HeaderStyle-CssClass="lhs">
<Columns>
<asp:TemplateField HeaderStyle-CssClass="lhs">
<HeaderTemplate>
<asp:LinkButton ID="lnkFullName" Text="Full Name"
CommandName="Sort" CommandArgument="FullName" runat="server"></asp:LinkButton>
</HeaderTemplate>
<ItemTemplate>
<%#Eval("FullName") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="lnkEdit" runat="server" CommandName="EditClick" CommandArgument='<%#Eval("RecipientID") %>'
Text="Edit">
</asp:LinkButton>
<asp:LinkButton ID="lnkDelete" runat="server" CommandName="DeleteClick" CommandArgument='<%#Eval("RecipientID") %>'
Text="Delete"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
最佳答案
在 ItemTemplate 中定义不可排序的列是什么意思? 为网格指定 Allowsorting =true 作为您要启用排序的各个列的排序表达式。
<asp:GridView AllowSorting="true"......../> and
<asp:TemplateField.............. SortExpression ="Full Name">
并且不要为不需要排序的列指定排序表达式。
我认为这足以对指定的列进行排序。
关于c# - GridView:隐藏标题上的排序箭头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11839422/