您的位置首页百科知识

数字格式化输出 DataFormatString

数字格式化输出 DataFormatString

DataFormatString="{0:yyyy-MM-dd}" 和 DataFormatString="{0:d}"有区别的。DataFormatString="{0:yyyy-MM-dd}"显示出来的日期格式是定的,比如今天显示2013-05-15。而DataFormatString="{0:d}"在不同电脑上显示出来的日期格式可能不一样,它表示精简日期格式。而精简日期格式是什么样子,就不能一概而论。在日历设定里,有个短日期格式设定,那里设定成什么,这个精简日期格式就是什么。比如,我电脑上现在设置的短日期格式是yyyy/M/dd,那么DataFormatString="{0:d}"格式下今天将显示2013/5/15;将我电脑上现在设置的短日期格式改成MM-dd-yyyy后,DataFormatString="{0:d}"格式冲兄下今天将显示为05-15-2013。 至于HtmlEncode="False",我查过很多资料,说是必须与DataFormatString配套使用,如果没有这一句,DataFormatString设定的日期格式将不起作用。这些结论可能是针对VS2008及以前的版本吧。我用VS2010做过试验,无论有没有HtmlEncode="False",DataFormatString都能起作用,可能族弊是VS2010做的优化吧。 HtmlEncode属性本身的意义就是对字段内容要不要做转义(如果为HtmlEncode="True",则需要进行转义)。转不转义是针对特殊字符散穗袭,而日期里一般不存在特殊字符,所以VS2010里针对日期格式的设定时,对HtmlEncode就不做要求了吧。