或者如下:此时只需要把属性DataSource=''<%# 数组名%>'' 。
4,可以是一个表达式
例如:Person是一个对象,Name和City是它的2个属性,则数据绑定表达式可以这样写:
<%#(Person.Name + " " + Person.City)%>。
5,可以是一个方法
例如:<%#GetUserName()%>。GetUserName()是一个已经定义的C#方法,一般要求有返回值。
6,可以是用Eval,DateBind.Eval取得的数据表的字段,这个是最常见的了,不再举例。
注意:如果数据绑定表达式作为属性的值,只要数据绑定表达式中没有出现双引号,那么<%#数据绑定表达式%>的最外层用双引号或者单引号都可以。如果数据绑定表达式中出现双引号,则<%#数据绑定表达式%>的最外层最好要用单引号。
与数据库有关的数据绑定表达式的常用方法?
1,<%#DataBind.Eval(Container.DataItem,"字段名")%>
<%#DataBind.Eval(Container.DataItem,"字段名","{0:c}") %>
还有2种不常用的:
<%# DataBinder.Eval(Container,"DataItem.字段名")%>
<%# DataBinder.Eval(Container,"DataItem.字段名",{0:c})%>
Container.DataItem相当于数据库中某个表中的一行记录,而一行可以有很多列。
最后一个参数和
<%# DataBinder.Eval(Container.DataItem, "字段名").ToString().Trim().Length>16?DataBinder.Eval(Container.DataItem, "字段名").ToString().Trim().Substring(0,16):DataBinder.Eval(Container.DataItem, "字段名").ToString().Trim() %>
2,<%#Eval("字段名")%>
<%#Eval("字段名","{0:c}")%>
.NET 2.0新出现的一个方法。和DataBind.Eval()等价。
最后一个参数和
使用三目运算符的例子:
<%#(Eval("性别")).ToString() =="True"?"男":"女"%>
性别字段类型为:是/否(Access),bit(sql server)
使用方法调用的例子:
<%# GetUserPhoto(Eval("PhotoPath")) %>
GetUserPhoto()的定义:
<%# string.Format("{0:c}", ((DataRowView)Container.DataItem)["字段名"])%>
用