【发布时间】:2016-08-04 11:21:09
【问题描述】:
我不明白为什么SortedDescendingHeaderStyle-CssClass 和SortedAscendingHeaderStyle-CssClass 在对我的GridView 进行排序时被应用于标题?
这是我的标记。我需要在后面的代码中配置它吗?
.ascending a
{
background: url(/images/asc.gif) right no-repeat;
display: block;
padding: 0 25px 0 5px;
}
.descending a
{
background: url(/images/desc.gif) right no-repeat;
display: block;
padding: 0 25px 0 5px;
}
<asp:GridView ID="gvOrderItems" runat="server" GridLines="None" CellSpacing="-1" AutoGenerateColumns="false" SortedAscendingHeaderStyle-CssClass="ascending"
AllowSorting="true" OnRowDataBound="gvOrderItems_RowDataBound" SortedDescendingHeaderStyle-CssClass="descending" OnSorting="gvOrderItems_Sorting" EnableViewState="true" AllowPaging="true" PageSize="10" OnPageIndexChanging="gvOrderItems_PageIndexChanging1">
<Columns>
<asp:BoundField DataField="OrderDate" HeaderText="Date" HeaderStyle-Font-Underline="true" HeaderStyle-ForeColor="White" ControlStyle-Font-Underline="true" DataFormatString="{0:dd/MM/yyyy}" SortExpression="OrderDate" />
<asp:BoundField DataField="OrderNumber" HeaderText="Order Number" HeaderStyle-Font-Underline="true" HeaderStyle-ForeColor="White" SortExpression="OrderNumber" />
<asp:BoundField DataField="SKUNumber" HeaderText="Product Number" HeaderStyle-Font-Underline="true" HeaderStyle-ForeColor="White" SortExpression="SKUNumber" />
<asp:BoundField DataField="OrderItemSKUName" HeaderText="Product Description" />
<asp:BoundField DataField="mtrx_Code2" HeaderText="Size" />
<asp:BoundField DataField="OrderItemUnitCount" HeaderText="OTY" />
<asp:BoundField DataField="OrderItemStatus" HeaderText="Status" />
</Columns>
<PagerStyle HorizontalAlign="Right" CssClass="cssPager"/>
</asp:GridView>
【问题讨论】:
-
您是否尝试对数据进行排序并检查是否应用了类?
-
您的 GridView 可能必须绑定到标记中的数据源才能自动工作。
-
嗨,当我对数据进行排序时,Piyush 类永远不会被应用?无论如何我可以在排序事件期间通过代码添加它吗?
-
你试过
gvOrderItems.Columns[n].HeaderStyle.CssClass(其中n是排序列的索引)吗? -
在
Sorting事件中,您可以遍历列并获取与SortExpression和e.SortExpression相同的列。
标签: c# html css asp.net gridview