由于本控件采用了Aspnet2.0 Ajax的框架,所以大家首先必须将WebApplication配置成支持Ajax的。具体办法可以从google搜索到,这里有一篇E文的:http://sharepoint.microsoft.com/blogs/mike/Lists/Posts/Post.aspx?ID=3。
TabsForAjax 文件包主要由两个部分组成:第一部分是XML文件XmlInstant.xml,在实际使用的时候,可以任意命名,譬如,一个Tabs组描述计划管理的内容,可以命名为PlanManage.xml。这个XML文件主要是用来定义Tabs的内容和格式。第二部分是WebPart Feature的Assembly和.webpart等,源码已经提供。
我们先来看一下XML文件:
完整的XML文件,请下载上一篇的源码,对照查看,在这里摘要仅描述,XML定义的主要结构如下:
<!-- Tabs下可以包含多个Tab -->
<Tabs>
<Tab>
<!-- WebParts下可一包括多个WebPart,这些WebPart的定义是直接支持MOSS站点中WebPart的定义导出的,导出后可直接黏贴到此处-->
<!-- 需要注意的是,目前发布的代码仅支持命名空间:xmlns=http://schemas.microsoft.com/WebPart/v3 这导致了一定的局限性-->
<WebParts>
<WebPart xmlns=http://schemas.microsoft.com/WebPart/v3>
</WebPart>
<WebPart xmlns=http://schemas.microsoft.com/WebPart/v3>
<WebPart>
</WebParts>
</Tab>
<Tab default="true" >
</Tab>
</Tabs>
在Render到Page中时,TabsForAjax会依据该XML文件将Tab按序输出,其中首次默认加载和显示的是default="true"的Tab。XML文件中各节点的属性很容易明白其意义,就不作更多介绍了。
XML文件制作完成后,可以用SPD将其上载到某个文件夹下,譬如说:/Style Library/Tabs/Xmls 下。把XML引用的图片放在/Style Library/Tabs/Images下等。
最后,在页面上添加WebPart,指定其属性TabsContentXml="/Style Library/Tabs/Xmls/(*).xml",*是该TabsForAjax的内容定义xml文件名。
需要注意的是,不要在SPD的属性窗格下设置TabsContentXml的值,请打开代码试图,直接在代码中添加添加TabsContentXml属性,并指定XML文件的地址。否则,源码中会自动生成一行UpdatePanel标签代码,引发页面异常。
这样,我们就可以看到上一篇中提到的Ajax效果。