ASP.NET 2.0 拥有内建的导航控件。

网站导航

维护大型站点的导航菜单是很困难,也很费时的。

在 ASP.NET 2.0 中,菜单可存储在文件中,这样维护起来更加方便。这个文件通常名为 web.sitemap,被存放在网站的根目录中。

此外,ASP.NET 2.0 拥有三种新的导航控件:

  • Dynamic menus
  • TreeViews
  • Site Map Path

Sitemap 文件

本教程使用下面的 sitemap 文件(站点地图):

<?xml version="1.0" encoding="ISO-8859-1" ?>
<siteMap><siteMapNode title="Home" url="/aspnet/w3home.aspx"><siteMapNode title="Services" url="/aspnet/w3services.aspx"><siteMapNode title="Training" url="/aspnet/w3training.aspx"/><siteMapNode title="Support" url="/aspnet/w3support.aspx"/></siteMapNode></siteMapNode>
</siteMap>

创建 sitemap 文件的规则:

  • XML 文件必须包含围绕内容的 <siteMap> 标签
  • <siteMap> 标签只能有一个 <siteMapNode> 子节点 ("home" page)
  • 每个 <siteMapNode> 可以有多个子节点 (web pages)
  • 每个 <siteMapNode> 拥有定义页面标题和 URL 的属性

注释:sitemap 文件必须存放在站点的根目录中,URL 属性必须相对于该根目录。

Dynamic Menu

<asp:Menu> 控件可显示标准的站点导航菜单。

代码实例:

<asp:SiteMapDataSource id="nav1" runat="server" /><form runat="server">
<asp:Menu runat="server" DataSourceId="nav1" />
</form>

在上面的例子中的 <asp:Menu> 控件是一个供服务器创建导航菜单的占位符。

控件的数据源由 DataSourceId 属性进行定义。id="nav1" 把它连接到 <asp:SiteMapDataSource> 控件

<asp:SiteMapDataSource> 控件会自动连接默认的 sitemap 文件(web.sitemap)。

点击此处查看 Menu 的 DEMO。

TreeView

<asp:TreeView> 控件可显示多级导航菜单。

这种菜单看上去像一棵带有枝叶的树,可通过 + 或 - 符号来打开或关闭。

代码实例:

<asp:SiteMapDataSource id="nav1" runat="server" /><form runat="server">
<asp:TreeView runat="server" DataSourceId="nav1" />
</form>

上面例子中的 <asp:TreeView> 控件是一个供服务器创建导航菜单的占位符。

控件的数据源由 DataSourceId 属性进行定义。id="nav1" 把它连接到 <asp:SiteMapDataSource> 控件

<asp:SiteMapDataSource> 控件会自动连接默认的 sitemap 文件(web.sitemap)。

点击此处查看 TreeView 的 DEMO。

SiteMapPath

SiteMapPath 控件可显示指向当前页面的指针(导航路径)。该路径显示为指向上级页面的可点击链接。

与 TreeView 和 Menu 控件不同,SiteMapPath 控件不使用 SiteMapDataSource。SiteMapPath 控件默认使用 web.sitemap 文件。

提示:如果 SiteMapPath 没有正确显示,很可能是由于 web.sitemap 文件中存在 URL 错误。

代码实例:

<form runat="server">
<asp:SiteMapPath runat="server" />
</form>

上面例子中的 <asp:SiteMapPath> 控件是一个供服务器创建导航菜单的占位符。

点击此处查看 SiteMapPath 的 DEMO。

【转】ASP.NET 2.0 - 导航(Navigation)SiteMap导航菜单关系相关推荐

  1. 温故知新ASP.NET 2.0(C#)(3) - SiteMap(站点地图)

    [索引页] [源码下载] 温故知新ASP.NET 2.0(C#)(3) - SiteMap(站点地图) 作者:webabcd 介绍 ASP.NET 2.0 中的站点导航提供程序向应用程序中的页公开导航 ...

  2. ASP.NET 2.0站点登录、导航与权限管理

    (一)登录 asp.net 2.0中,新增了许多新的功能和控件.其中,新增的登陆控件可谓使得WEB应用的设计更加得心应手.什么是登陆控件呢?就是我们平常在WEB应用中经常要用到的用户注册,登陆,忘记密 ...

  3. [翻译]在Asp.net 2.0中操作数据::母板页和站点导航

    在Asp.net 2.0中操作数据::母板页和站点导航 英文原文 |  下载示例代码(C#)  |  翻译进度  |  英文教程目录 导言 通常,用户友好的个性化站点都有着一致的,站点统一的页面布局和 ...

  4. ASP.NET 2.0收集

    更多滚动 8 ASP.NET2.0连接SQL Server数据库详解 轩辕南宫| 天极开发|2006-07-10 08:00 本文将详细介绍如何使用Connection对象连接数据库.对于不同的.NE ...

  5. Element-UI组件之导航Navigation

    Element-UI组件之导航Navigation NavMenu 导航菜单 顶栏 侧栏 折叠 Tabs 标签页 基础用法 选项卡样式 卡片化 位置 自定义标签页 动态增减标签页 自定义增加标签页触发 ...

  6. 好消息,scott的asp.net 2.0数据导航系列全部出版了

    好消息,scott的asp.net 2.0数据导航系列全部出版了 好消息,scott的asp.net 2.0数据导航系列全部出版了,大师级的作品,共75篇, 分VB.NET和 c#版本,全面系统讲解了 ...

  7. 在ASP.NET 2.0中建立站点导航层次

    站点导航提供程序--ASP.NET 2.0中的站点导航提供程序暴露了应用程序中的页面的导航信息,它允许你单独地定义站点的结构,而不用考虑页面的实际物理布局.默认的站点导航提供程序是基于XML的,但是你 ...

  8. Scott Mitchell 的ASP.NET 2.0数据教程之四十四::DataList和Repeater数据分页

    原文 | 下载本教程中的编码例子 | 下载本教程的PDF版 导言 分页和排序是显示数据时经常用到的功能.比如,在一个在线书店里搜索关于ASP.NET 的书的时候,可能结果会是成百上千,而每页只列出十条 ...

  9. [转载] 使用 Web 标准生成 ASP.NET 2.0 Web 站点

    参考链接: 使用super访问Java祖父母的成员 Stephen WaltherSuperExpert.com 适用于: Microsoft ASP.NET 2.0 (Beta 2) Microso ...

最新文章

  1. Python中将数据矢量化运算所带来的时间加快
  2. C语言获取当前工作路径
  3. linux suse 安装redis,suse 配置redis远程访问
  4. 动态切换父元素隐藏和显示里面的子元素的动画会再一次执行吗?
  5. 使用.NET Core创建Windows服务(二) - 使用Topshelf方式
  6. POJ3784-Running Median(运行中位数)【链表】
  7. box-shadow技巧分享
  8. 为什么数字中台是企业应用新基建?
  9. vue 日期前面加0_NutUI - 京东开源的轻量级移动端Vue组件库
  10. linux设备驱动模型一字符设备open系统调用流程
  11. S7-1200做智能IO设备
  12. word删除空白页的6种方法和技巧
  13. 数学建模-多元线性回归
  14. 使用plist文件进行ipa的安装
  15. weak_auth 小宁写了一个登陆验证页面,随手就设了一个密码。
  16. ECCV 2020 论文大盘点-语义分割篇
  17. 从源码层面理解 Either、Option 和 Try
  18. g77、gfortran、gcc的区别与联系
  19. colbat strike 安装注意事项
  20. 基于DTMF技术与射频技术的远程控制的实现

热门文章

  1. 【OS学习笔记】二十一 保护模式六:保户模式下操作系统内核如何加载用户程序并运行 对应的汇编代码之内核代码
  2. JS之onsubmit事件与组织事件外延
  3. strcpy、memcpy和memset的区别
  4. cJONS序列化工具解读二(数据解析)
  5. mongodb如何根据字段(数组类型)的长度排序_大数据存储技术选型(七)——MongoDB设计模式及索引优化...
  6. 大学物理实验长度的测量实验报告_大学物理实验教案长度和质量的测量两篇
  7. python实现决策树数据直接赋值导入_决策树在python中的数据实现
  8. A-Frame WEB VR框架初体验
  9. 2 引入失败_苦等2年!总投资2800万!镇江首个民国风商场,来了!
  10. vue v-if判断数组元素的值_Vue项目上线做的一些基本优化