先新建一个名为menu的xml文件,内容如下:

<?xml version="1.0" encoding="utf-8" ?><menu>  <menuItem url="~/Default.aspx" title="首页"  description=""/>  <menuItem url="~/News.aspx" title="新闻"  description="">    <menuItem url="~/News.aspx" title="国内新闻"  description=""/>    <menuItem url="~/News.aspx" title="国际新闻"  description=""/>  </menuItem></menu>

然后在页面上拖放一个menu控件,并拖放一个XmlDataSource控件,id为XmlDataSource1,将menu的 DataSourceID设置为XmlDataSource1。
配置XmlDataSource控件,使DataFile="~/Menu.xml" XPath="menu/menuItem",
这里采用xpath来选取数据,即将menuItem的数据筛选出来。
此时,再绑定menu控件的数据,告诉menu控件该怎么显示从xml文件筛选出来的数据。选中menu控件,在属性窗口选取DataBindings,在弹出的对话框里,在左上角的列表中选中menuItem,单击添加按钮将menuItem添加到左下的列表中,再在此列表中选择menuItem,此是右边的列表将显示要绑定的属性,使NavigateUrlField="url" TextField="title"。按确定按钮返回设计界面,此时就会显示出"首页"和"新闻"两个菜单项。
设计html代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="CoAffiliate._Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server">    <title>Untitled Page</title></head><body>    <form id="form1" runat="server">    <div>        <asp:Menu ID="Menu1" runat="server" DataSourceID="XmlDataSource1" Orientation="Horizontal"         StaticEnableDefaultPopOutImage="False">            <DataBindings>                <asp:MenuItemBinding DataMember="menuItem" NavigateUrlField="url" TextField="title" />            </DataBindings>        </asp:Menu>        <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/Menu.xml" XPath="menu/menuItem">        </asp:XmlDataSource>        </div>    </form></body></html>

以上就是使用xml作为数据源,配合asp:Menu类自由扩展菜单项的内容,更多相关内容请关注PHP中文网(www.php.cn)!

更多相关文章

  1. 从无到有实现一个xml数据库登录验证
  2. 从XML中读取数据到内存的实例
  3. 广告控件中xml文件的写法
  4. 使用XSLT将XML数据转换成HTML
  5. 使用纯HTML的通用数据管理和服务
  6. HTML中的XML数据岛记录编辑与添加的详细介绍
  7. 使用JavaScript访问XML数据
  8. 对XML数据使用XMLConvert
  9. 详细介绍把数据转换成XML格式的好处

随机推荐

  1. Linux 下 Sublime Text 3 安装 Godef 进
  2. Linux文件权限概念
  3. linux sar查看网络流量
  4. window与linux查看端口被占用
  5. linux -s和 -f,-e 的区别
  6. 定期清理服务器日志
  7. 获取输出为管道的命令的pid
  8. Linux----------zabbix监控-应用实例
  9. LINUX下搭建简单临时的WWW服务器
  10. 转:——Windows和Linux进程间通信区别