我对将站点地图文件绑定到ASP.NET中的菜单控件没有太多的经验,我想看看这是否可行(没有很多自定义管道)。
我正在使用
CSS Friendly Adapters
以获得干净的标记。我已经准备好了CSS来创建水平导航,上面的条代表主导航,下面的条代表子导航。
本质上,我想转换此站点地图文件:
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="Home" description="">
<siteMapNode url="~/Page1.aspx" title="Page1" description="">
<siteMapNode url="~/SubPage1_1.aspx" title="Sub Page 1.1" description="" />
<siteMapNode url="~/SubPage1_2.aspx" title="Sub Page 1.2" description="" />
</siteMapNode>
<siteMapNode url="~/Page2.aspx" title="Page2" description="">
<siteMapNode url="~/SubPage2_1.aspx" title="Sub Page 2.1" description="" />
<siteMapNode url="~/SubPage2_2.aspx" title="Sub Page 2.2" description="" />
</siteMapNode>
</siteMapNode>
</siteMap>
在此标记中:
<div class="nav" >
<ul class="fixed">
<li><a href="Page1.aspx" class="active">Page 1</a></li>
<li><a href="Page2.aspx">Page 2</a></li>
</ul>
</div><!-- end .nav -->
<div class="subnav" >
<ul class="fixed">
<li><a href="SubPage1_1.aspx" class="active">Page 1.1</a></li>
<li><a href="SubPage1_2.aspx">Page 1.2</a></li>
</ul>
</div><!-- end .subnav -->
子导航绑定到站点地图中主导航节点的子节点的位置。
我是否错误地认为这很简单;)