Eval和Bind的格式化字符串所处位置不同,以下举出几个例子:
1.Eval是单向取值,既可以使用系统定义的函数格式化,也可以调用自己定义的格式化函数(如例子中的MyFormatFunction函数)。
<%# string.Format("{0:yyyy-MM-dd}",Eval("BirthDate")) %>
<%# MyFormatFunction(Eval("BirthDate")) %>
2.Bind是双向的,格式化字符串既被用于格式化显示,又要作为数据输入验证。
<%# Bind("BirthDate","{0:yyyy-MM-dd}") %>
<%# Bind("Birthday","{0:M.d}") %>
PS:笔记
我用 <%# Eval("PicSmall") %>取出的字符串是“abcde” 我只想要 "cde",该如何格式化这个字符串呢?
<%# Eval("PicSmall").ToString.SubString(Eval("PicSmall").ToString.Length-3,3) %>
或者
在数据库中处理后再用 select right(PicSmall,3)from table1