DataFormatString 的使用
DataFormatString="{0:格式字符串}"
在DataFormatString 中的 {0} 表示數(shù)據(jù)本身,而在冒號(hào)后面的格式字符串代表所們希望數(shù)據(jù)顯示的格式;
數(shù)字、貨幣格式:
在指定的格式符號(hào)后可以指定小數(shù)所要顯示的位數(shù)。例如原來(lái)的數(shù)據(jù)為「1.56」,若格式設(shè)定為 {0:N1},則輸出為「1.5」。其常用的數(shù)值格式如下表所示:
格式字符串 輸入 結(jié)果
"{0:C}" 12345.6789 $12,345.68
"{0:C}" -12345.6789 ($12,345.68)
"{0:D}" 12345 12345
"{0:D8}" 12345 00012345
"{0:E}" 12345.6789 1234568E+004
"{0:E10}" 12345.6789 1.2345678900E+004
"{0:F}" 12345.6789 12345.68
"{0:F0}" 12345.6789 12346
"{0:G}" 12345.6789 12345.6789
"{0:G7}" 123456789 1.234568E8
"{0:N}" 12345.6789 12,345.68
"{0:N4}" 123456789 123,456,789.0000
"Total: {0:C}" 12345.6789 Total: $12345.68
常用的日期時(shí)間格式:
格式 說(shuō)明 輸出格式
d 精簡(jiǎn)日期格式 MM/dd/yyyy
D 詳細(xì)日期格式 dddd, MMMM dd, yyyy
f 完整格式 (long date + short time) dddd, MMMM dd, yyyy HH:mm
F
完整日期時(shí)間格式
(long date + long time)
dddd, MMMM dd, yyyy HH:mm:ss
g 一般格式 (short date + short time) MM/dd/yyyy HH:mm
G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss
m,M 月日格式 MMMM dd
s 適中日期時(shí)間格式 yyyy-MM-dd HH:mm:ss
t 精簡(jiǎn)時(shí)間格式 HH:mm
T 詳細(xì)時(shí)間格式 HH:mm:ss
最后寫(xiě)一下中國(guó)常用的格式
{0:yyyy-MM-dd}
用DataFormatString格式化GridView
在GridView里面顯示數(shù)據(jù),要顯示的數(shù)據(jù)有好多位小數(shù),就想讓它只顯示兩位小數(shù),在delphi里,直接用DisplayFormat就行了, 在.net中,查了半天msdn,發(fā)現(xiàn)使用DataFormatString是可以實(shí)現(xiàn)這個(gè)功能的,但是怎么設(shè)置就不起作用,最后發(fā)現(xiàn),由于2.0出于安 全性的考慮,還要同時(shí)設(shè)置HtmlEncode = false,才能夠使DataFormatString生效.
留個(gè)記號(hào),下次用的時(shí)候,就不用浪費(fèi)N多時(shí)間了.
還有還有,DataFormatString = "{0:F}",是默認(rèn)格式,顯示兩位小數(shù),如果需要顯示的小數(shù)位數(shù)為其他值,DataFormatString = "{0:Fn}"即可.
?
DataFormatString="{0:格式字符串}"
在DataFormatString 中的 {0} 表示數(shù)據(jù)本身,而在冒號(hào)后面的格式字符串代表所們希望數(shù)據(jù)顯示的格式;
數(shù)字、貨幣格式:
在指定的格式符號(hào)后可以指定小數(shù)所要顯示的位數(shù)。例如原來(lái)的數(shù)據(jù)為「1.56」,若格式設(shè)定為 {0:N1},則輸出為「1.5」。其常用的數(shù)值格式如下表所示:
格式字符串 輸入 結(jié)果
"{0:C}" 12345.6789 $12,345.68
"{0:C}" -12345.6789 ($12,345.68)
"{0:D}" 12345 12345
"{0:D8}" 12345 00012345
"{0:E}" 12345.6789 1234568E+004
"{0:E10}" 12345.6789 1.2345678900E+004
"{0:F}" 12345.6789 12345.68
"{0:F0}" 12345.6789 12346
"{0:G}" 12345.6789 12345.6789
"{0:G7}" 123456789 1.234568E8
"{0:N}" 12345.6789 12,345.68
"{0:N4}" 123456789 123,456,789.0000
"Total: {0:C}" 12345.6789 Total: $12345.68
常用的日期時(shí)間格式:
格式 說(shuō)明 輸出格式
d 精簡(jiǎn)日期格式 MM/dd/yyyy
D 詳細(xì)日期格式 dddd, MMMM dd, yyyy
f 完整格式 (long date + short time) dddd, MMMM dd, yyyy HH:mm
F
完整日期時(shí)間格式
(long date + long time)
dddd, MMMM dd, yyyy HH:mm:ss
g 一般格式 (short date + short time) MM/dd/yyyy HH:mm
G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss
m,M 月日格式 MMMM dd
s 適中日期時(shí)間格式 yyyy-MM-dd HH:mm:ss
t 精簡(jiǎn)時(shí)間格式 HH:mm
T 詳細(xì)時(shí)間格式 HH:mm:ss
?
在 我們從業(yè)務(wù)邏輯層獲得數(shù)據(jù)實(shí)體時(shí)候,接下來(lái)的事情就是要綁定到控件中。數(shù)據(jù)實(shí)體中的一些字段可以直接綁定到界面中,但是有一些字段需要重新格式化格式。比 如貨幣單位字段,需要顯示貨幣符號(hào)和每隔三位顯示分隔符;再比如日期字段,數(shù)據(jù)庫(kù)中存放的是日期和時(shí)間,但是在界面上需要按照XXXX年XX月XX日的格 式顯示。這時(shí)候我們就用到了DataFormatString 屬性。
< asp : GridView ID ="grvResult" runat ="server" AutoGenerateColumns ="False" Width ="100%">
????< Columns >
????????< asp : BoundField HeaderText =" 預(yù)定日期 " DataField ="OperationDate" DataFormatString ="{0:yyyy-MM-dd}" HtmlEncode ="False" >
????????</ asp : BoundField >?????
????????< asp : BoundField HeaderText =" 訂單總計(jì) " DataField ="TotalRate" DataFormatString ="{0:C}" HtmlEncode ="False" >
????????</ asp : BoundField >
????</ Columns >
</ asp : GridView >
例如上面的代碼展示了日期和貨幣兩種綁定方式。DataFormatString 中的{0} 是固定的格式,這和String.Fromat(“{0}”, someString)中的{0}是一個(gè)用法,表示綁定上下文的參數(shù)索引編號(hào)。然后,在后面加入格式化字符串,具體的使用方法可以參考MSDN。
這里需要注意以下幾點(diǎn)
1. 在GridView中的asp : BoundField 使用DataFormatString 必須設(shè)置屬性HtmlEncode ="False" ,否則不起作用。
2. 如果需要使用日期類(lèi)型的格式化字符串,必須數(shù)據(jù)實(shí)體中對(duì)應(yīng)的字段也應(yīng)該日起類(lèi)型的。
3. 格式化字符串C代表貨幣單位,需要綁定的數(shù)據(jù)類(lèi)型應(yīng)該是數(shù)字類(lèi)型的。如果是字符串類(lèi)型的不起作用,需要手動(dòng)添加格式化字符串為DataFormatString =" ¥ {0:C}" 。
注意:設(shè)置了DataFormatString不起作用,請(qǐng)檢查是否設(shè)置為 HtmlEncode = false
總結(jié)
以上是生活随笔為你收集整理的DataFormatString 的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2022年危险化学品经营单位安全管理人员
- 下一篇: 云计算的云是指什么?最简单的解释是什么?