我有一个简单asp:menu-item
的Web.sitemap
用于获取菜单项.该页面将回发但无法获得与所单击项目关联的页面.我会提到导航条码在主页文件中.
<div>
<asp:SiteMapDataSource ID="SiteMapDataSource1" ShowStartingNode="false" runat="server" />
<asp:Menu ID="Menu1" Orientation="horizontal" runat="server" BackColor="#a0a080" DataSourceID="SiteMapDataSource1"
DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#a00000"
StaticSubMenuIndent="10px" Style="z-index: 2; left: 390px; position: absolute;
top: 281px" Height="20px" Width="311px">
<StaticSelectedStyle BackColor="#a0a080" />
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<DynamicHoverStyle BackColor="#a0a080" ForeColor="White" />
<DynamicMenuStyle BackColor="#a0a080" />
<DynamicSelectedStyle BackColor="#a0a080" />
<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<DataBindings>
<asp:MenuItemBinding DataMember="SiteMapNode" EnabledField="Title" TextField="Title" />
</DataBindings>
<StaticHoverStyle BackColor="#666666" ForeColor="White" />
</asp:Menu>
</div>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="" title="" description="">
<siteMapNode title="Home" description="Zombie (be)Warehouse" url="index.aspx" />
<siteMapNode title="Armor" description="Anti-Zombie Armor" url="Armor.aspx" />
<siteMapNode title="Weapons" description="Anti-Zombie Weapons" url="Weapons.aspx" />
<siteMapNode title="Manuals" description="Survival Manuals" url="Manuals.aspx" />
<siteMapNode title="Sustenance" description="Prepared food for survival" url="Sustenance.aspx" />
<siteMapNode title="Contacts" description="Contact Us" url="Contacts.aspx" />
<siteMapNode title="About" description="About Zombie (be)Warehouse" url="About.aspx" />
</siteMapNode>
</siteMap>
Run Code Online (Sandbox Code Playgroud)
更新:
问题DataBindings
出现在菜单项的部分.注意这一行:
<asp:MenuItemBinding DataMember="SiteMapNode" EnabledField="Title" Text="Title" />
Run Code Online (Sandbox Code Playgroud)
该Text="Title"
套从菜单的显示文本Web.sitemap
的文本字段.我注意到这个MenuItemBinding
项目有一个叫做的字段NavigateUrlField
.
所以要解决这个问题,你只需要更改/添加即可 asp:MenuItemBinding
<asp:MenuItemBinding DataMember="SiteMapNode" NavigateUrlField="url" EnabledField="Title" TextField="Title" />
Run Code Online (Sandbox Code Playgroud)
您需要像这样 添加NavigateUrlField
字段MenuItemBinding
<asp:MenuItemBinding DataMember="SiteMapNode" EnabledField="Title" TextField="Title" NavigateUrlField="url"/>
归档时间: |
|
查看次数: |
2145 次 |
最近记录: |