2010-03-11 80 views
1

Asp.Net的GridView DataFormatString問題

<asp:TemplateField HeaderText="Number"> 
          <ItemTemplate> 
           <asp:Label ID="LblNbr" runat="server" Text='<%# Eval("Number","{0:N0}") %>'></asp:Label> 
          </ItemTemplate> 

         </asp:TemplateField> 

    </column> 
    </asp:GridView> 

輸出格式:3,333,333

我需要的輸出格式:3.333,333

回答

0

這是因爲文化的您正在使用。如果您需要某種特定的格式,而不是使用您自己的文化,並根據需要定義NumberFormatInfo(http://msdn.microsoft.com/en-us/library/system.globalization.numberformatinfo.aspx)。

你可以設置這樣使用它:

 CultureInfo someCulture = new CultureInfo("en-US"); 
     someCulture.NumberFormat.NumberDecimalSeparator = ","; 
     someCulture.NumberFormat.NumberGroupSeparator = "."; 
     Thread.CurrentThread.CurrentCulture = someCulture; 
+0

如何使特定的格式? – Chicharito 2010-03-11 08:30:14

+0

不工作Andrew,如何製作線內特定格式? 「{0:N0}」? – Chicharito 2010-03-11 08:44:08

+0

如何使用「#,#。###」而不是「{0:N0}」這樣的smth? – 2010-03-11 08:54:12