当前位置: 首页 > 图文教程 > XML家族 > XML > 使用xml作为数据源,让asp:Menu类自由扩展菜单项

XML
快速通过XSL转换XML文件
XML入门精解之结构与语法
利用XSL和ASP在线编辑XML文档
关于XML在语音合成中的应用
如何得到XML文档文件的大小
快速从一个XML文件中查找信息
一个在客户端生成并使用XML的例子
给XML初学者建议
XML的四种解析器原理及性能比较
改变我们生活的这些XML应用
揭穿 XQuery 的神话和误解
使用XSL将XML文档中的CDATA注释输出为HTML文本
基于XML的购物车的实现
javascript调用XML制作连动下拉框
用XML数据岛结合Dom制作通讯录
用XSL翻译Web服务应用程序
使用XSLT将XML数据转换成HTML
获取mssql的xml返回结构的方法
使用xmldom在服务器端生成静态html页面
使用纯HTML的通用数据管理和服务

XML 中的 使用xml作为数据源,让asp:Menu类自由扩展菜单项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 35 ::
收藏到网摘: n/a

  先新建一个名为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>
http://www.cnblogs.com/ofei/archive/2007/01/20/625745.html