创建一个自定义ToolPart
***********************************************************************************
* 版权声明
* 此文章为ocean所有,版权归ocean所有,任何网站
*和 媒体转载必须包含此段声明,否则将视为侵权,作者将
* 保留一切权力。此声明为此文章中不可或缺的一部分。
* 作者网名:ocean
* 作者email:ocean@forever.net.cn
* 作者网站:http://www.oceanstudio.net
* http://sps.oceanstudio.net
* 作者blog:博客园,http://www.cnblogs.com/ocean
* 版权声明
* 此文章为ocean所有,版权归ocean所有,任何网站
*和 媒体转载必须包含此段声明,否则将视为侵权,作者将
* 保留一切权力。此声明为此文章中不可或缺的一部分。
* 作者网名:ocean
* 作者email:ocean@forever.net.cn
* 作者网站:http://www.oceanstudio.net
* http://sps.oceanstudio.net
* 作者blog:博客园,http://www.cnblogs.com/ocean
* ocean's blog,http://www.oceanstudio.net/sps/blog
* 此文章发表时间:2005年2月19日
* 此文章源:http://www.cnblogs.com/ocean/archive/2005/02/19/106154.html
************************************************************************************
示例WebPart是一个图片查看器,这个图片查看器可以支持在图片上设置超级链接。这个WebPart点击此处下载,带源码。效果演示可以点击此处 。
如果你想查看更多的WebPart,请访问:webpart演示和下载
这个WebPart的ToolPart中有一个自定义的WebPart,如下图:
可以看到我在最上面增加了版权信息,这个版权信息是一个ToolPart。同时大家发现自定义属性的位置也变了。如何做的呢?自定义一个ToolPart比较简单,只要新建项,然后选择建立一个新的ToolPart就可以了。建立之后就是示例中的CopyrightToolPart.cs,大家可以看到这个类是继承Microsoft.SharePoint.WebPartPages.ToolPart的。只要实现了RenderToolPart方法就可以了。实现如下:
* 此文章发表时间:2005年2月19日
* 此文章源:http://www.cnblogs.com/ocean/archive/2005/02/19/106154.html
************************************************************************************
示例WebPart是一个图片查看器,这个图片查看器可以支持在图片上设置超级链接。这个WebPart点击此处下载,带源码。效果演示可以点击此处 。
如果你想查看更多的WebPart,请访问:webpart演示和下载
这个WebPart的ToolPart中有一个自定义的WebPart,如下图:
可以看到我在最上面增加了版权信息,这个版权信息是一个ToolPart。同时大家发现自定义属性的位置也变了。如何做的呢?自定义一个ToolPart比较简单,只要新建项,然后选择建立一个新的ToolPart就可以了。建立之后就是示例中的CopyrightToolPart.cs,大家可以看到这个类是继承Microsoft.SharePoint.WebPartPages.ToolPart的。只要实现了RenderToolPart方法就可以了。实现如下:
/// <summary>
/// Render this tool part to the output parameter specified.
/// </summary>
/// <param name="output">The HTML writer to write out to </param>
protected override void RenderToolPart(HtmlTextWriter output)
{
output.WriteLine("<div style='align:center;width:100%'><a href='http://www.oceanstudio.net' target='blank'>海洋工作室</a></div>");
output.WriteLine("<div style='align:center;width:100%;margin-top:3px'>版权所有:<a href='mailto:ocean@forever.net.cn'>ocean</a><div>");
}
/// Render this tool part to the output parameter specified.
/// </summary>
/// <param name="output">The HTML writer to write out to </param>
protected override void RenderToolPart(HtmlTextWriter output)
{
output.WriteLine("<div style='align:center;width:100%'><a href='http://www.oceanstudio.net' target='blank'>海洋工作室</a></div>");
output.WriteLine("<div style='align:center;width:100%;margin-top:3px'>版权所有:<a href='mailto:ocean@forever.net.cn'>ocean</a><div>");
}
然后在WebPart文件中,就是示例中的ImageViewer.cs中,实现GetToolParts方法,原来这个方法是注释起来的,把注释去掉,然后把原来的new ToolPart[2]改成new ToolPart[3],再加几行代码就可以了。此方法如下:
/// <summary>
/// This method gets the custom tool parts for this Web Part by overriding the
/// GetToolParts method of the WebPart base class. You must implement
/// custom tool parts in a separate class that derives from
/// Microsoft.SharePoint.WebPartPages.ToolPart.
/// </summary>
///<returns>An array of references to ToolPart objects.</returns>
public override ToolPart[] GetToolParts()
{
ToolPart[] toolparts = new ToolPart[3];
WebPartToolPart wptp = new WebPartToolPart();
CustomPropertyToolPart custom = new CustomPropertyToolPart();
toolparts[1] = custom;
toolparts[2] = wptp;
toolparts[0] = new CopyrightToolPart();
return toolparts;
}
/// This method gets the custom tool parts for this Web Part by overriding the
/// GetToolParts method of the WebPart base class. You must implement
/// custom tool parts in a separate class that derives from
/// Microsoft.SharePoint.WebPartPages.ToolPart.
/// </summary>
///<returns>An array of references to ToolPart objects.</returns>
public override ToolPart[] GetToolParts()
{
ToolPart[] toolparts = new ToolPart[3];
WebPartToolPart wptp = new WebPartToolPart();
CustomPropertyToolPart custom = new CustomPropertyToolPart();
toolparts[1] = custom;
toolparts[2] = wptp;
toolparts[0] = new CopyrightToolPart();
return toolparts;
}
ok,如此就可以了。就可以在WebPart中写明你自己的版权了,哈哈。
欢迎访问海洋工作室。