欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【使用xml作为数据源,让asp:Menu类自由扩展菜单项】,下面是详细的分享!
使用xml作为数据源,让asp:Menu类自由扩展菜单项
先新建一个名为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
以上所分享的是关于使用xml作为数据源,让asp:Menu类自由扩展菜单项,下面是编辑为你推荐的有价值的用户互动:
相关问题:怎么把xml文件作为数据源,展示xml文件里面的数据...
答:dom读取xml文件不就行啦 >>详细
相关问题:用asp修改xml增加xml中节点的时候要将第三行中的“<...
答:如果原XML是 那就是: XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("xml/images.xml")); XmlNode xmln = xmlDoc.SelectSingleNode("root"); xmln.removeChild(xmln.childNodes[0]) ; 后面接你原来的内容 这种是把那节点... >>详细
相关问题:asp.net 做导航 用menu控件,实现菜单横排,鼠标移...
答: - - 一 1000 0 1 1 - - 1 100001 1000 0 2 - 2 100002 1000 0 2 - 二 1100 0 1 1 - 1 110001 1100 0 2 - 2 110002 1100 0 2 - 三 1200 0 1 1 - 1 120001 1200 0 2 - 2 120002 1200 0 2 - 四 1300 0 1 1 - 1 130001 1300 0 2 - 2 130002 1300 0 2 >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
