無法設定gridview BoundField的string format

無法設定gridview BoundField的string format

要處理將數字轉為以千為單位並用逗號區分的格式

將數字轉為以千為單位並用逗號區分的方法

照步驟做

有時在GridView中想把顯示出的數字以千為區分時,我們可以在BoundField中,將其DataFormatString屬性設為{0:N0},並把HtmlEncode屬性設為false,即可得到前述結果。

很詭異的沒有出現format之後的結果=.=

參考了下列資料

How to format a number string in gridview?

將RowDataBound加入事件


    {
        string sShowField, sMessage;
        DataRowView oDataRow;
        if (e.Row.RowIndex != -1)
        {
            oDataRow = (DataRowView)(e.Row.DataItem);
            sShowField = oDataRow["Amount"].ToString();
            sMessage = string.Format("{0:N0}", int.Parse(sShowField));
            e.Row.Cells[3].Text = sMessage;
        }
    }

各位大大有更好的解決方法請不吝提供

謝謝^^

_________________________________________________________________________________________________________________

修改於 2010/02/11


    {
        string sShowField, sMessage;
        DataRowView oDataRow;
        if (e.Row.RowIndex != -1 && e.Row.RowType == DataControlRowType.DataRow)
        {
            oDataRow = (DataRowView)(e.Row.DataItem);
            sShowField = oDataRow["Amount"].ToString();
            sMessage = string.Format("{0:N0}", int.Parse(sShowField));
            e.Row.Cells[0].Text = sMessage;
        }
    }