Asp.NetListView数据绑定控件是在Asp.Net3.5中引入的,在此之前我们已经拥有了n多同类的控件了。那么我们还有必要再增加这类控件吗?答案是Yes!它为你提供了强大的可高度自定义外观功能,使用它你几乎可以扔掉其他的数据绑定控件了。ListView包含大量的模板,使用这些模板我们可以很方便地显示、编辑、插入数据,也可以对数进行分组,设置选中一行数据或如数据为空时的显示方式等。主要的模板有:·LayoutTemplate·ItemTemplate·AlternatingItemTemplate·SelectedItemTemplate·EmptyItemTemplate·EmptyDataTemplate·ItemSeparatorTemplate·GroupTemplate·GroupSeparatorTemplate·EditItemTemplate·InsertItemTemplate一、显示数据显示数据要用到两个关键模板分别是LayoutTemplate和ItemTemplate,其中LayoutTemplate用于控制数据的外观呈现,而ItemTemplate则用于提供数据集中的每一行数据。ListView将用ItemTemplate中的数据填充到LayoutTemplate中的占位符位置。先创建一个ADO.NET实体数据模型(使用Northwind示例数据库),用EntityDataSource配置为Products数据集。
接着拖放一个ListView到设计窗口中设置其DataSourceID="EntityDataSource1",并在源窗口中修改成如下的代码:| ProductID | 1ProductName | UnitPrice |
|---|
| <%#Eval("ProductID")%> | <%#Eval("ProductName")%> | <%#Eval("UnitPrice")%> |
代码中LayoutTemplate模板我们定义了一个HTMLTable控件,请注意其中的一行:服务器控件PlaceHolder实际上起到了占位符的作用,其中"ItemContainerID="ItemPlaceHolder"属性是关键,它指示ListView在ID="ItemPlaceHolder"的控件的位置进行填充数...