<?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>