먼저 다음 내용을 포함하는 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>
그런 다음 페이지에 메뉴 컨트롤을 끌어서 놓고 ID가 XmlDataSource1인 XmlDataSource 컨트롤을 끌어서 놓은 다음 메뉴의 DataSourceID를 XmlDataSource1로 설정합니다.
DataFile="~/Menu.xml"이 되도록 XmlDataSource 컨트롤을 구성합니다.
이때 메뉴 컨트롤의 데이터를 바인딩하고 xml 파일에서 필터링된 데이터를 표시하는 방법을 메뉴 컨트롤에 알려줍니다. 메뉴 컨트롤을 선택하고, 속성 창에서 DataBindings를 선택하고, 팝업 대화 상자에서 왼쪽 상단 목록에서 menuItem을 선택하고, 추가 버튼을 클릭하여 왼쪽 하단 목록에 menuItem을 추가한 다음, 메뉴 항목에서 menuItem을 선택합니다. 이 목록, 이것이 맞습니다. 목록에는 바인딩할 속성이 표시되므로 NavigateUrlField="url" TextField="title"입니다. 디자인 인터페이스로 돌아가려면 OK 버튼을 누르세요. 이때 "홈"과 "뉴스"라는 두 가지 메뉴 항목이 표시됩니다.
디자인 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>