第11章 网站地图与页面导航
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
11.1 网站地图
11.1.1 定义网站地图
创建站点地图要遵循的原则 1. 网站地图以<siteMap>元素开始以与之相对的 </siteMap>元素结束。其他信息则放在<siteMap>元 素和</siteMap>元素之间。 2. 每一个站点地图文件定义了一个网站的页面组织结 构,可以使用<siteMapNode>元素向这个组织结构 插入一个页面,这个页面将包含一些基本信息:页 面的名称(将显示在导航控件中)、页面的描述以及 URL(页面的链接地址)。
11.2 导航控件
11.2.1 TreeView控件
TreeView控件由节点组成,树中的每一项都 称为一个节点,它由一个TreeNode对象表示。 节点有如下几种类型:
父节点,它包含其他节点。 子节点,它被其他节点包含。 叶节点,它不包含子节点。 根节点,它不被其他节点包含,同时是所有其他节 点的上级节点。 一个节点可以同时为父节点和子节点,但不能同时 为根节点、父节点和叶节点。
11.2 导航控件
1. 2.
ASP.NET提供了三种导航控件:
TreeView控件。 Menu控件。 SiteMapPath控件。
3.
利用三种导航控件与SiteMapDataSource控 件相结合可以很轻松实现优秀的页面导航 功能。
11.2 导航控件
11.2.1 TreeView控件
1.
1.
2.
3. 4. 5.
11.2 导航控件
11.2.2 Menu控件
用户单击菜单项时,Menu控件可以导航到所链接的 网页或直接回发到服务器。如果设置了菜单项的 NavigateUrl属性,则 Menu 控件导航到所链接的页; 否则,该控件将页回发到服务器进行处理。 默认情况下,链接页与Menu控件显示在同一窗口或 框架中。若要在另一个窗口或框架中显示链接内容, 请使用Menu控件的Target属性。
11.1 网站地图
11.1.2 把站点文件绑定到页面 1. 确定Web.sitemap文件列举的页面都已经存在于网站
项目中。 2. 在页面上添加一个SiteMapDataSource控件。 3. 最后,添加一个绑定到SiteMapDataSource控件的导 航控件。设置导航的控件的属性DataSourceID为 SiteMapDataSource控件的ID。
2.
3.
2. 3. 4.
5. 6. 7.
TreeView控件以树型结构来对网站进行导航,它支持以下功能: 数据绑定,它允许控件的节点绑定到XML、表格或关系数据。 站点导航,通过与SiteMapDataSource控件集成实现。 节点文本既可以显示为纯文本也可以显示为超链接。 借助编程方式访问TreeView对象模型以动态地创建树、填充节点、设置 属性等。 客户端节点填充。 在每个节点旁显示复选框的功能。 通过主题、用户定义的图象和样式可实现自定义外观。
11.1 网站地图
11.1.1 定义网站地图
使用VS2010创建的站点地图文件可以自动生成组成网站地图 的基本结构,示例代码如下: <?xml version="1.0" encoding="utf-8" ?> <siteMapxmlns="http://schemas.microsoft.com/AspNet/SiteMap -File-1.0" > <siteMap> <siteMapNode url="" title="" description="" <siteMapNode url="" title="" description="" /> <siteMapNode url="" title="" description="" /> </siteMapNode> </siteMap>
11.2 导航控件
11.2.3 SiteMapPath控件
1.
SiteMapPath由节点组成。路径中的每个元 素均称为节点,用SiteMapNodeItem对象表 示。 SiteMapPath包含如下几种节点类型:
根节点,锚定节点分层组的节点。 父节点,有一个或多个节点但不是当前节点的节 点。 当前节点,表示当前显示页的节点。
1.
2.
3.
11.1 网站地图
ASP.NET提供了名为XmlSiteMapProvider的网站地 图提供器,使用XmlSiteMapProvider可以从XML文 件中获取网站地图信息。 XmlSiteMapProvider会从根目录中寻找名为 Web.sitemap的文件来读取信息,它解析了 Web.sitemap文件中的网站地图数据后创建一个网 站地图对象,而这个网站地图对象能够被 SiteMapDataSource所使用,而SiteMapDataSource可 以被放置在页面上的导航控件所使用,最后由导 航控件把网站的导航信息显示在页面上。
11.1 网站地图
11.1.1 定义网站地图
3.一个<siteMapNode>元素表示一个页面,通过嵌套 <siteMapNode>元素可以形成树型结构的页面组织 结构。 4. 每一个站点地图都是以单一的<siteMapNode>元素 开始的,每一个站点地图都要包含一个根节点,而 所有其他的节点都包含在根节点中。 5. 在站点地图文件中,可以没有URL,但不允许重复 的URL出现,因为SiteMapProvider以集合的形式来存 储节点,而每项是以URL为索引的。
第11章 网站地图与页面导航
本章重点
网站地图的结构 TreeView控件 Menu控件
11.1 网站地图
AS源自文库.NET的导航是可配置的,它主要包含 三部分:
一种定义网站导航结构的方式,使用XML结构形 式的网站地图文件来存储导航结构信息。 一种方便读取网站地图文件信息的方式,可以使 用SiteMapDataSource控件和XmlSiteMapProvider控 件来实现这个功能。 一种把网站地图信息显示在用户浏览器上的方式, 并且能够让用户使用这个导航系统。
11.2 导航控件
11.2.3 SiteMapPath控件
SiteMapPath控件显示一个导航路径,此路径为用 户显示当前页的位置,并显示返回到主页的路径 链接。 SiteMapPath控件包含来自站点地图的导航数据, 此数据包括有关网站中页的信息,如URL、标题、 说明和导航层次结构中的位置。
1. 2. 3. 4.
11.2 导航控件
11.2.2 Menu控件
Menu控件以菜单的结构形式来对网站进行导航, 可以采用水平方向或竖直方向的形式导航,它支 持以下功能:
通过与SiteMapDataSource控件集成提供对站点导航的支持。 可以显示为可选择文本或超链接的节点文本。 通过编程访问Menu对象模型,使程序员可以动态地创建菜 单,填充菜单项以及设置属性等。 能够采用水平方向或竖直方向的 形式导航。 支持静态或动态的显示模式。
11.2 导航控件
11.2.2 Menu控件
Menu控件由菜单项(由MenuItem对象表示)树组成。顶级 (级别0)菜单项称为根菜单项。具有父菜单项的菜单项称 为子菜单项。所有根菜单项都存储在Items集合中。子菜单项 存储在父菜单项的ChildItems集合中。 每个菜单项都具有Text属性和Value属性。Text属性的值显示 在Menu控件中,而Value 属性则用于存储菜单项的任何其他 数据(如传递给与菜单项关联的回发事件的数据)。在单击 时,菜单项可导航到NavigateUrl属性指示的另一个网页。