首页 / 网页编程 / ASP.NET / 领先技术: ListView提示和技巧
        
            领先技术: ListView提示和技巧2011-10-25 MSDN Dino Esposito在上月刊中为您介绍了 ListView 控件,它是 ASP.NET 3.5 控件工具箱中的一个新成员。概括来说, ListView 是 DataList 控件的增强版本,它提供了对生成标记的更多控制,还支持分页功能,并与基于 数据源的绑定模型实现了全面集成。在本专栏中,我将深入介绍 ListView 模板和数据绑定的基础知识,以实现在实际页面中非常常见但 却需要额外编码的一些功能。您将了解到如何使用嵌套的 ListView 控件来创建数据的分层视图,以及如 何通过派生自定义 ListView 类来扩展 ListView 事件模型。特别是,我将改进事件模型,以便您能够为不同的绑定数据项组使用不同的模板。例如,您可以对数 据集中与给定标准匹配的所有数据项使用不同的模板。这绝不仅仅是简单地将特定项目设置为不同的样式 ;您可以在任何视图控件中仅通过处理 ItemDataBound 事件即可轻松完成此任务。通常,菜单是由一系列使用 CSS 设计的 <li> 标记实现的。呈现平面菜单不会引起任何特殊的 绑定问题,但如果需要一个或多个子菜单时会发生什么情况呢?在这种情况下,您可以使用内置的菜单控 件,也可以借助 ListView 来创建极具个性化的呈现方式。顺便说一下,要注意在默认情况下,菜单控件 使用基于表格的输出,这与 ListView 所提供的 CSS 友好输出截然不同。构建分层菜单许多 Web 应用程序都在页面的左侧或右侧提供了垂直菜单。利用此菜单,用户能够导航至二级或多级 嵌套页面。在这里 ASP.NET 菜单控件无疑是一种可行的选择。但是,我更倾向于仅当菜单需要使用分层 数据源(通常为 XML 文件)以及需要创建飞出式子菜单时才使用菜单控件。对于静态的多级项目列表,我选择使用 repeater 型控件来输出 UI 设计团队创建的标记。在 ASP.NET 3.5 中,可供选择的 repeater 型控件是 ListView 控件。