0

我在下面有一个 .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>
4

1 回答 1

1

这可能是列的数据类型有问题。它的排序就像它是一个字符串而不是一个数字。您的 DataFormatString 想法走在了正确的轨道上,但您需要将数据作为 int 传递到该列,或者实现此处描述的一些自定义排序:

http://msdn.microsoft.com/en-us/library/aa984282(v=vs.71).aspx

于 2012-08-02T22:30:43.557 回答