博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

数据绑定控件(前台)

Posted on 2010-09-15 15:33  EVON168  阅读(273)  评论(0编辑  收藏  举报

后台为前台提供数据的两种方式:

1.DataSource---直接数据源(DataSet,DataTable)

2.DataSourceID---关联到一个DataSource控件的ID---支持双向数据绑定

DataSource,DataSourceID两者不能同时定义!

简单的绑定控件:

<asp:CheckBoxList ID="CheckBoxList1" runat="server" 
            DataSourceID
="SqlDataSource1" DataTextField="StuName" DataValueField="StuID">
        
</asp:CheckBoxList>

 

 数据绑定语法:

语法的应用:

1.字符串拼接:

      <%# "abc"+Eval("列名").ToString()%>

      <%# Eval("列名","abc{0}")%>

2.格式化:

      <%# Eval("列名","{0:yyyy-MM-mm}")%>

3.调用函数:

      <%# 函数(Eval("列名"))%>

   数据绑定表达式包含在 <%# 和 %> 分隔符之内,并使用 Eval 和 Bind 函数。Eval 函数用于定义单向(只读)绑定。Bind 函数用于定义双向(可更新)绑定。除了调用 Eval 和 Bind 方法外,还可以调用 <%# 和 %> 分隔符之内的任何公共范围代码,以在页面处理过程中执行该代码并返回一个值。

 <asp:Repeater ID="Repeater1" runat="server">
            
<ItemTemplate>
                
<%"订单编号:"+ Eval("OrderID")%>
                
<br />
                
<%# Eval("CustomerID""客户姓名:{0}")%>
                
<br />
                
<%# Eval("OrderDate""订购时间:{0:yyyy-MM-dd}")%>
                
<br />
                
<%# Eval("Freight","运费:{0:#.00}")%>
                (
                
<%double.Parse(Eval("Freight").ToString())>50 ? "太贵":"便宜"%>
                ) 
-- (
                
<%this.Check(Eval("Freight"))%>
                )
                
<br />
                
<hr />
            
</ItemTemplate>
        
</asp:Repeater>

 

值得提醒:

 

 <%this.Check(123%><%--表示需要调用绑定才能执行--%>
    
<%=this.Check(123%><%--表示直接执行--%>