数据访问中的模板控件

5 篇文章 0 订阅

虽然 DataGrid 服务器控件对许多适于采用网格样式数据表示形式的 Web 应用程序方案很适合,但许多情况下,数据表示形式需要丰富得多。ASP.NET 提供两个控件 DataListRepeater,这两个控件为呈现列表样式的数据提供了更大的灵活性。这些控件基于模板,因此没有自己的默认呈现形式。数据的呈现方式完全取决于控件模板的实现,而控件模板描述如何表示数据项。

DataGrid 控件一样,DataListRepeater 也支持 DataSource 属性,该属性可设置为任何 ICollectionIEnumerableIListSource 类型。此 DataSource 中的数据通过其 DataBind 方法绑定到控件。绑定了数据后,每个数据项的格式都由模板描述。

ItemTemplate 属性控制 DataSource 集合中每一项的呈现形式。在 ItemTemplate 内,可以定义任何任意表示代码(HTML 或其他)。使用 ASP.NET 数据绑定语法,可以将数据绑定中的值插入 DataListRepeater 控件,如下例所示。

<ASP:Repeater id="MyRepeater" runat="server"> <ItemTemplate> Hello <%# DataBinder.Eval(Container.DataItem, "name") %> ! </ItemTemplate> </ASP:Repeater> 

Container 表示直接层次结构中支持 System.Web.UI.INamingContainer 标记接口的第一个控件。本例中,Container 解析为 System.Web.UI.WebControls.RepeaterItem 类型的对象,而该类型具有 DataItem 属性。当 Repeater 在 DataSource 集合上迭代时,DataItem 随之包含该集合的当前项。例如,如果将数据源设置为 Employee 对象的 ArrayList,则 DataItem 是 Employees 类型。当绑定到 DataView 时,DataItemDataRowView 类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值