2012-05-02 57 views
1

我想知道是否會有格式的網格視圖控件,將顯示磅值前的值。在訪問數據庫中存在貨幣符號,但是,將數據庫附加到網格視圖時,數據會顯示但不包含貨幣符號。在gridview中顯示貨幣

對不起,我的問題描述不佳。感謝您的時間。

回答

3

您是否嘗試在列上使用DataFormatString =「{0:C}」?

<asp:BoundField DataField="SomeValue" DataFormatString="{0:C}" /> 

它將根據區域設置顯示貨幣符號。

1

正如lcarus所說,將DataFormatString設置爲「{0:C}」,它應該可以工作。然而,如果我錯了,有人糾正我,但它取決於服務器上的文化設置。例如,如果服務器上的文化設置是「en-US」,那麼您將看到一個美元符號。如果我正確理解您的帖子,您正在尋找磅(GBP)符號。

現在,如果你的服務器設置爲英國英國,你很好。但是,如果它設置爲英語美國並且您沒有必要的訪問權限來更改它,則可以使用TemplateField。

<asp:TemplateField HeaderText="MyColumn"> 
    <ItemTemplate> 
      $<%# Eval("MyColumn")%> 
    </ItemTemplate> 
</asp:TemplateField> 

我在這個例子中使用了美元符號,但你明白了。

0

Unicode技術委員會接受了建議的unicode代碼位置&#x20B9; (從維基百科),所以你可以改變你的HTML來添加這些字符序列。

有人已經在他的MVC WebGrid項目中展示了這個符號。在這裏看到:

how-to-show-indian-currency-symbol-in-mvc-webgrid

grid1.Column("EmpName",format: (item) => new HtmlString("&#x20B9; " + Convert.ToString(item.Salary)), header: "Notes"))) 

我只想說,我們其他的方法可以做到so..so只是嘗試和對方分享..

感謝

0

,你可以做到這一點以三種方式,我知道

  1. 以編程方式,只是覆蓋CUL ture

    System,Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(「en:IN」); }

  2. 可以一頁一頁重寫,在你想重寫的頁面頂部你可以看到頁面的細節,比如語言等。 那裏只是添加,

    <%@ Page **Culture="en-IN"** Language = "C#".....>

  3. 在web.config文件中,在配置標記

    <System.Web> 
         <Globalization Culture="en:IN"/> 
        </System.Web> 
    

這就是它! 我們完成了...:)

也可以使用GridView控件的RowDataBound事件爲gridview控件中的每一行執行此操作。

謝謝!