ISBN978-7-301-13679-9/TP.0956ASP.NET动态网页设计案例教程(C#版)ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956本节重点SiteMapPath、TreeViewMenuASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956本节内容8.2“电子书”案例8.3“新闻导航”案例ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956第8章导航控件“方讯网络”网站的两种导航提示ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.1导航控件概述ASP.NET2.0提供了SiteMapPath、TreeView和Menu三个控件来实现站点导航SiteMapPath控件通过导航路径向用户显示当前页面的位置,并以链接的形式显示返回主页的路径。TreeView控件显示一个树状结构或菜单,让用户可以遍历访问站点中的不同页面。Menu控件显示一个可展开的菜单,让用户可以遍历访问站点中的不同页面。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.2“电子书”案例ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.2.1操作步骤1.“电子书”网站的创建1)“电子书”网站的准备2)“电子书”网站的创建2.“电子书”网站的浏览ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.2.2本节知识点1.TreeView控件中编辑节点2.内置的视图方案3.对节点事件的处理ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09561.TreeView控件中编辑节点TreeView控件可以显示层次数据。TreeView控件由节点组成。树中的每个项都称为一个节点,它由一个TreeNode对象表示。包含其他节点的节点称为“父节点”;被其他节点包含的节点称为“子节点”;没有子节点的节点称为“叶节点”;不被其他任何节点包含同时是所有其他节点的上级的节点是“根节点”。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956利用TreeView控件创建导航利用TreeView控件创建导航的方法有3种直接在【TreeView节点编辑器】窗口进行手工的编辑使用站点地图直接选择其它数据源,如各种数据库等,或编程实现导航ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09562.内置的视图方案TreeView控件的结构是一个树视图的层次结构。TreeView控件上的每个元素或每一项都称为节点。层次结构中最上面的节点是根节点。TreeView控件可以有多个根节点。在层次结构中,任何节点,包括根节点在内,如果在它的下面还有节点,就称为父节点。每个父节点可以有一个或多个子节点。如果节点不包含子节点,就称为叶节点。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09563.对节点事件的处理TreeView控件提供了多个事件。TreeView控件支持的常用事件如下:ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.3“新闻导航”案例ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.3.1操作步骤1.“新闻导航”网站的创建2.“新闻导航”网站的浏览ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09568.3.2本节知识点1.站点地图文件的作用与结构2.利用Menu控件进行导航3.利用SiteMapPath控件标识路径ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09561.站点地图文件的作用与结构若要使用ASP.NET站点导航,必须描述站点结构以便站点导航API和站点导航控件可以正确显示站点结构。默认情况下,站点导航系统使用一个包含站点层次结构的XML站点地图文件。创建站点地图最简单方法是创建一个名为Web.sitemap的XML文件,该文件按站点的分层形式组织页面。ASP.NET的默认站点地图提供程序自动选取此站点地图。Web.sitemap文件必须位于应用程序的根目录中。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956“新闻导航”示例的站点地图文件Web.sitemap代码ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956siteMapNode元素的属性说明ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956提示:Web.sitemap文件中的各个“url”网页地址一定要真实存在,不然会提示出错。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09562.利用Menu控件进行导航Menu控件用于显示Web网页中的菜单,并常与用于导航网站的SiteMapDataSource控件结合使用。用户单击菜单项时,Menu控件可以导航到所链接的网页或直接回发到服务器。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956Menu控件的属性ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956Menu控件的主要事件ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956Menu控件的使用Menu控件的使用很简单:定义站点地图文件Web.sitemap,拖入一个SiteMapDataSource控件设置Menu控件的DataSourceID属性值为刚添加的SiteMapDataSource控件ID提示:TreeView控件的使用方法也和Menu控件相同。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.09563.利用SiteMapPath控件标识路径SiteMapPath控件是一种站点导航控件,反映站点地图对象提供的数据。它显示了超链接页名称的分层路径,从而提供了从当前位置沿页层次结构向上的跳转,如SiteMapPath控件对于分层页结构较深的站点很有用,在此类站点中TreeView或Menu可能需要较多的页空间。SiteMapPath控件直接使用网站的站点地图数据。如果将其用在未在站点地图中描述的页面上,则其不会显示。ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956SiteMapPath控件的常用属性ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956SiteMapPath控件的使用SiteMapPath控件的使用添加站点地图文件Web.sitemap拖入一个SiteMapPath控件注意:要确保引用该控件网页的网页地址包含在Web.sitemap的某个“url”属性中,不然导航不起作用ASP.NET动态网页设计案例教程(C#版)北京大学出版社ISBN978-7-301-13679-9/TP.0956本章小结本章通过“电子书”和“新闻导航”两个案例,详细的介绍了TreeView控件、站点地图、SiteMapPath控件和Menu控件的作用和使用方法。为求导航方便,在“电子书”案例中使用了框架。由于篇幅的关系,两个案例距实际应用都还有一定距离,有兴趣的读者可以自己完善。