我下面有一个.NET DataGrid,它不对列进行排序。例如,排序就像
10 100 21 即使设置了DataFormatString =“{0:N0}”,排序仍然不起作用。请帮助。
<asp:DataGrid ID="StatusGrid" CssClass="StatusGrid" runat="server" AutoGenerateColumns="false"
UseAccessibleHeader="true" OnItemDataBound="StatusGrid_ItemDataBound" OnItemCommand="StatusGrid_ItemCommand">
<Columns>
ItemStyle-HorizontalAlign="Left" />
<asp:BoundColumn DataField="Rating" HeaderText="Performance Rating" ItemStyle-Width="110px"
ItemStyle-HorizontalAlign="Left" DataFormatString="{0:N0}"/>
</Columns>
答案 0 :(得分:1)
这可能是列的数据类型的问题。它的排序好像是一个字符串而不是一个数字。您使用DataFormatString的想法处于正确的轨道上,但您需要将数据作为int传递给该列,或者实现此处描述的一些自定义排序:
http://msdn.microsoft.com/en-us/library/aa984282(v=vs.71).aspx