2.使用 DataSource属性进行数据绑定 ■此选项能够绑定包括 ADO.NEt数据集和数据读取器在内 的各种对象。但是,使用此方法需要为所有附加功能(如 排序、分页和更新)编写代码。 当指定数据绑定控件的 DataSource属性或者 Data Sourced属 性之后,再调用 Databind0方法才会显示绑定的数据
◼ 2.使用DataSource属性进行数据绑定 ◼ 此选项能够绑定包括ADO.NET数据集和数据读取器在内 的各种对象。但是,使用此方法需要为所有附加功能(如 排序、分页和更新)编写代码。 ◼ 当指定数据绑定控件的DataSource属性或者DataSourceID属 性之后,再调用DataBind()方法才会显示绑定的数据
913使用数据绑定表达式实现数据绑定 数据绑定语法 (1)数据绑定的语法格式 使用数据绑定语法,可以将控件属性值绑定数据,并指定 值以便对数据进行检索、更新、删除和插入操作。 数据绑定表达式包含在“<%#”和“%>”分隔符之内, 并使用Eval方法和Bind方法。Eval方法用于定义单向(只 读)绑定,Bind方法用于定义双向(可更新)绑定。Eval 和Bnd方法的语法格式如下: <%#Eva("字段名")%> ■<%#Bind("字段名")%>
◼ 9.1.3 使用数据绑定表达式实现数据绑定 ◼ 1.数据绑定语法 ◼ (1)数据绑定的语法格式 ◼ 使用数据绑定语法,可以将控件属性值绑定数据,并指定 值以便对数据进行检索、更新、删除和插入操作。 ◼ 数据绑定表达式包含在“<%#”和“%>”分隔符之内, 并使用Eval方法和Bind方法。Eval方法用于定义单向(只 读)绑定,Bind方法用于定义双向(可更新)绑定。Eval 和Bind方法的语法格式如下: ◼ <%# Eval("字段名") %> ◼ <%# Bind("字段名") %>
除了通过在数据绑定表达式中调用Evl和Bind方法执行数 据绑定外,还可以调用“<%#”和“0>”分隔符之内的 任何公共范围代码,以便在页面处理过程中执行该代码并 返回一个值 <%#绑定表达式% ■上述语法允许程序员不仅可以绑定数据源,而且可以绑定 简单属性、集合、表达式,甚至从方法调用返回的结果 数据绑定表达式可以作为一种独立的数据绑定方式,也可 以与其他数据绑定方式配合,以更灵活地显示数据
◼ 除了通过在数据绑定表达式中调用Eval和Bind方法执行数 据绑定外,还可以调用“<%#”和“%>”分隔符之内的 任何公共范围代码,以便在页面处理过程中执行该代码并 返回一个值。 ◼ <%# 绑定表达式%> ◼ 上述语法允许程序员不仅可以绑定数据源,而且可以绑定 简单属性、集合、表达式,甚至从方法调用返回的结果。 数据绑定表达式可以作为一种独立的数据绑定方式,也可 以与其他数据绑定方式配合,以更灵活地显示数据
2)数据绑定表达式出现的位置 ■①可以将数据绑定表达式包含在服务器控件或者普通的 HIML元素的开始标记中,作为属性名和属性值对的值。 例如 asp: Text Box ID=TextBox1 "runat="server"Text=<%#a 据绑定表达式>></asp: TextBox 此时数据的绑定表达式可以是一个变量,也可以是一个带 返回值的C#方法,也可以是某个控件的某个属性的值, 也可以是C#对象的某个字段或者属性的值等。当然也可 以直接就是一个字符串,例如"helo"。 如果此时的数据绑定表达式是Eva("数据库中某个表的某 个字段")等,那么必须把 TextBox1放在某个循环显示的控 件的模板中才正确,否则会提示:“Eval、 XPath0和 Bind这类数据绑定方法只能在数据绑定控件的上下文中 使用”,意思是要把 TextBox1放在像 Repeater、 Datalist、 Gridview这样的控件的模板中
◼ (2)数据绑定表达式出现的位置 ◼ ① 可以将数据绑定表达式包含在服务器控件或者普通的 HTML元素的开始标记中,作为属性名和属性值对的值。 例如: ◼ <asp:TextBox ID="TextBox1" runat="server" Text='<%#数 据绑定表达式%>' ></asp:TextBox> ◼ 此时数据的绑定表达式可以是一个变量,也可以是一个带 返回值的C#方法,也可以是某个控件的某个属性的值, 也可以是C#对象的某个字段或者属性的值等。当然也可 以直接就是一个字符串,例如"hello"。 ◼ 如果此时的数据绑定表达式是Eval("数据库中某个表的某 个字段")等,那么必须把TextBox1放在某个循环显示的控 件的模板中才正确,否则会提示:“Eval()、XPath()和 Bind()这类数据绑定方法只能在数据绑定控件的上下文中 使用”,意思是要把TextBox1放在像Repeater、DataList、 GridView这样的控件的模板中
②数据绑定表达式可以包含在页面中的任何位置。例如: form id=form1 runat="server" <div #Eva("数据绑定表达式1") <%#Eval"数据绑定表达式2)%> form> 如果此时的数据绑定表达式是Eva("数据库中某个表的某 个字段")等,那么必须把<%#Eva(数据绑定表达式1")%> <%o#al(数据绑定表达式2")%>放在像 Repeater Datalist、 Gridview这样的控件的模板中 口③可以将数据绑定表达式包含在 javAscript代码中,从而实 现在 JavaScript中调用C#的方法
◼ ② 数据绑定表达式可以包含在页面中的任何位置。例如: ◼ <form id="form1" runat="server"> ◼ <div> ◼ <%#Eval("数据绑定表达式1")%> ◼ <%#Eval("数据绑定表达式2")%> ◼ </div> ◼ </form> ◼ 如果此时的数据绑定表达式是Eval("数据库中某个表的某 个字段")等,那么必须把<%#Eval("数据绑定表达式1")%> 、<%#Eval("数据绑定表达式2")%>放在像Repeater、 DataList、GridView这样的控件的模板中。 ◼ ③ 可以将数据绑定表达式包含在JavaScript代码中,从而实 现在JavaScript中调用C#的方法