Créez d'abord un nouveau fichier XML nommé menu avec le contenu suivant :
<?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>
Ensuite, faites glisser et déposez un contrôle de menu sur la page, puis faites glisser et déposez un contrôle XmlDataSource avec l'identifiant de XmlDataSource1, et changez le DataSourceID du menu Set en XmlDataSource1.
Configurez le contrôle XmlDataSource pour que DataFile="~/Menu.xml"
À ce stade, liez les données du contrôle de menu et indiquez au contrôle de menu comment afficher les données filtrées à partir du fichier XML. Sélectionnez le contrôle de menu, sélectionnez DataBindings dans la fenêtre des propriétés, dans la boîte de dialogue contextuelle, sélectionnez menuItem dans la liste dans le coin supérieur gauche, cliquez sur le bouton Ajouter pour ajouter menuItem à la liste en bas à gauche, puis sélectionnez menuItem dans cette liste, c'est la bonne. La liste affichera les propriétés à lier, donc NavigateUrlField="url" TextField="title". Appuyez sur le bouton OK pour revenir à l'interface de conception. À ce moment, les deux éléments de menu « Accueil » et « Actualités » seront affichés.
Le code HTML conçu est le suivant :
<%@ 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>