MOSS自带导航仅支持2级导航,而碰到一个需求要做成3 级导航,就只能自定义了 ,请先看修改后的页面
开始动手拉 第一步创建 XML 文件 <?xml version="1.0" encoding="gb2312" ?> <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 url="~/News.aspx" title="亚洲新闻" description=""/> <menuItem url="~/News.aspx" title="欧洲新闻" description=""/> </menuItem> </menuItem> </menu>
第二步 上传 XML文件到需要自定义的网站
第三步 使用SPD添加XML数据源
浏览到刚才上传的XML,点确定,添加数据源
第四步 插入 数据源 控件 打开 默认母板页 ,在左边导航 空白处 ,插入 XML数据源控件
第五步 修改 XML数据源 XPATH 路径 在刚才插入的XML 数据源控件上右击选择属性,修改XPATH 路径为 /*/*
第六部 修改 左边导航控件 ASPMENU 部分代码 在母板页代码中,找到左边导航 控件 代码 做 如下修改, 1 修改datasourceID属性为上文插入的XML数据源ID 2 插入 <DataBindings> </DataBindings> 属性节 3 注意 StaticDisplayLevels MaximumDynamicDisplayLevels 这2个属性设置
<SharePoint:AspMenu ID="CurrentNav" runat="server" datasourceID="SPXmlDataSource1" orientation="Vertical" StaticDisplayLevels="1" MaximumDynamicDisplayLevels="3" StaticSubMenuIndent="1" ItemWrap="true" AccessKey="3" CssClass="leftNav" SkipLinkText="<%$Resources:cms,masterpages_skiplinktext%>"> <LevelMenuItemStyles> <asp:MenuItemStyle CssClass="leftNav1" /> <asp:MenuItemStyle CssClass="leftNav2" /> <asp:MenuItemStyle CssClass="leftNav3" /> </LevelMenuItemStyles> <DataBindings> <asp:MenuItemBinding DataMember="menuItem" NavigateUrlField="url" TextField="title" /> <asp:MenuItemBinding DataMember="menuItem" NavigateUrlField="url" TextField="title" /> <asp:MenuItemBinding DataMember="menuItem" NavigateUrlField="url" TextField="title" /> </DataBindings> <StaticHoverStyle CssClass="leftNavHover"/> <StaticSelectedStyle CssClass="leftNavSelected"/> <DynamicMenuStyle CssClass="leftNavFlyOuts" /> <DynamicMenuItemStyle CssClass="leftNavFlyOutsItem"/> <DynamicHoverStyle CssClass="leftNavFlyOutsHover"/> </SharePoint:AspMenu>
第八步 SPD中切换到,设计视图 ,就能看到 导航已经被修改.
总结: 导航实际为一个 ASP.NET控件 MENU ,大家可以去查查有关此控件详细信息 除了左边导航,顶部的全局导航,也可以同样方法定制,也可以为导航控件 绑定 其他的数据源. 另,如果什么问题,欢迎大家指正 原文地址:http://bbs.winos.cn/thread-40199-1-1.html |
转载于:https://www.cnblogs.com/poissonnotes/archive/2010/07/28/1787315.html