如何添加DevExpress ASPxNavBar控件到SharePoint 2010 的默认主页上?
作者:zhuhm 来源:本站原创 浏览:Loading...次 发布时间:2012-08-27 评论:0条
这篇文章演示了如何添加ASPxNavBar控件到SharePoint 2010 的默认主页上。它同时也描述了把DevExpress控件集成到SharePoint 2010 里的过程。
修改快速启动菜单或者添加导航控件到SharePoint 2010 的整个过程可以被分为以下几部分:
注册ASPxNavBar控件
控件在SharePoint 里可用之前,它们首先应该被注册到系统里。正确的完成注册操作,你应该从以下几个目录里得到DevExpress程序集:
c:\Program Files (x86)\DevExpress 2010.1\Components\Components\Sources\DevExpress.DLL\
你的路径可能与上述的路径不同。不需要在SharePoint服务器上安装DevExpress控件。例如,它们可能已经在开发机上被注册了,并且可以从安装在开发机上的程序集里移除。由于导航控件属于ASPxperience套件,所需要的一系列程序集如下所示:
DevExpress.Web.v10.1.dll
DevExpress.Data.v10.1.dll
DevExpress.Web.ASPxThemes.v10.1.dll
在全局程序集缓存里注册这些程序集有几种方法:将程序集添加到全局程序集缓存.
下面是 c:\Windows\assembly 目录的两张图片(程序集注册前、后)
由于程序集都注册在全局程序集缓存里,所以它们可以被任何的应用程序使用。但是,他们应该被注册在web.config 文件里,如如何将DevExpress web控件整合到SharePoint页面? 这篇文章中描述的一样。
在测试SharePoint 2010 服务器中,web.config 文件在c:\inetpub\wwwroot\wss\VirtualDirectories\80 目录中可以得到。
[XML]
<SafeControls>
...
<SafeControl Assembly="DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxNavBar" TypeName="*" Safe="True" />
<SafeControl Assembly="DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TypeName="*" Safe="True" />
<SafeControl Assembly="DevExpress.Data.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Data" TypeName="*" Safe="True" />
</SafeControls>
[XML]
<assemblies>
<add assembly="DevExpress.Data.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<add assembly="DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<add assembly="DevExpress.Web.ASPxThemes.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
</assemblies>
注意:ASPxThemes.dll 程序集应该被注册到web.config 文件里,如果它在SharePoint页面上使用DevExpress 主题的话。
DevExpress 控件的最新版本使用了HTTP模板和HTTP处理器,叫作ASPxHttpHandlerModule。它们应该被注册到web.config 文件里,假定SharePoint 2010在集成模式里使用了IIE7应用程序集区: 如何手动注册一个HttpHandler的模块?
[XML]
<system.web>
<httpHandlers>
<add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" verb="GET" path="DX.ashx" preCondition="integratedMode"/>
</httpHandlers>
<httpModules>
<add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule"/>
</httpModules>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule"/>
</modules>
<handlers>
<add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" verb="GET" path="DX.ashx" preCondition="integratedMode"/>
</handlers>
</system.webServer>
注意:使用iisreset 程序重启IIS是合适的,然后检查SharePoint网页,从而服务器正常启动了。
现在万事俱备,因此我们可以开始放置DevExpress控件到网页上。
修改主页的快速启动标志
SharePoint 2010 的默认主页可以使用SharePoint 2010 设计器来修改。设计器可以从以下两个链接下载:
Microsoft SharePoint Designer 2010 (32-bit)
Microsoft SharePoint Designer 2010 (64-bit)
要打开SharePoint 2010 ,你应该首先启动设计器,然后打开一个网站。网站的名字应该是一个用户可以使用的真名。因为如果本地用户被指定的话,就不能编辑主页了。
这些步骤显示在下面这张图片中:
当前的SharePoint应用程序使用的是v4.master 页面作为主页面。
要添加导航控件到主页上,它们首先应该通过下面几行语句被注册到文件的顶部:
在v4.master 页面的中间,你应该定位如下代码:
[ASPx]
<%@ Register assembly="DevExpress.Web.v10.1, Version=10.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxNavBar" TagPrefix="dx" %>
In the middle of the v4.master page, you should locate the following code:
[ASPx]
<SharePoint:UIVersionedContent UIVersion="4" runat="server">
<ContentTemplate>
<SharePoint:AspMenu id="V4QuickLaunchMenu" runat="server" EnableViewState="false" DataSourceId="QuickLaunchSiteMap" UseSimpleRendering="true" UseSeparateCss="false" Orientation="Vertical" StaticDisplayLevels="2" MaximumDynamicDisplayLevels="0" SkipLinkText="" CssClass="s4-ql" />
</ContentTemplate>
</SharePoint:UIVersionedContent>
您应该删除AspMenu,并用ASPxNavBar取代它:
[ASPx]
<SharePoint:UIVersionedContent UIVersion="4" runat="server">
<ContentTemplate>
<dx:ASPxNavBar id="V4QuickLaunchNavBar" runat="server" DataSourceID="QuickLaunchSiteMap" EnableViewState="false" />
</ContentTemplate>
</SharePoint:UIVersionedContent>
你应该把AspMenu移除,并且用ASPxNavBar来代替。
注意:最好把AspMenu从页面上移除,因为如果你仅仅把它注释掉,那么一些客户端初始化脚本将会在页面上被呈现,并且它们会尝试去使用这个菜单即使这个菜单已经被注释掉。一个有趣的事情就是被注释掉的AspMenu会在被禁锢于注释标签的同时又在页面上呈现出来。
完成这些操作以后,你可以看到 ASPxNavBar 控件其实是快速启动菜单的一个替代品。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [http://www.devexpresscn.com/]
本文地址:http://www.devexpresscn.com/DevExpress-Resources/Documentation-211.html
评论列表
暂无评论
请谈谈你的看法 请使用IE或者Firefox浏览器,暂不支持Chrome!
慧都控件网为DevExpress界面控件的中国地区唯一正式授权经销商,正版控件销售公司,授权代理商,经销商及合作伙伴。
电话:400-700-1020
023-66090381
邮箱:sales@evget.com
相关资源
- DXv2 WPF 2012.1.5试用体验
- 创建自定义XtraVerticalGrid控件子节点来实现自定义行缩进
- 修改DevExpress WPF控件的主题
- 迁移DevExpress主题到DevExpress.Web.ASPxThemes.v12.1?
- Dev 2012.1版本与VS2010集成问题
- NavBar如何实现二级折叠效果
- GridControl运行时是否可以不选中任何行
- XtraReports v11.2中PrintingSystem属性不能赋值怎么办
- 将原vs2010的项目直接转换为具有DevExpress控件的项目
- 手动注册HttpHandler Module
- 如何将EXCEL模板导入到自定义的报表控件中
- web控件整合到SharePoint页面
- Aqua AutoFormat应用到SharePoint页面
- DXChart与透视网格控件集成例子中图例显示的问题
- WPF表格控件GridControl如何设置行高
- ASP.NET控件问题
- ASPxEditor套包问题
- ASPxGridView控件FAQ
- 中级信用环境中网站停止工作
- ASPxperience控件常见问题FAQ