惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
N
Netflix TechBlog - Medium
aimingoo的专栏
aimingoo的专栏
P
Proofpoint News Feed
F
Fortinet All Blogs
大猫的无限游戏
大猫的无限游戏
I
InfoQ
V
V2EX
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
有赞技术团队
有赞技术团队
G
Google Developers Blog
L
LangChain Blog
博客园_首页
M
MIT News - Artificial intelligence
H
Hackread – Cybersecurity News, Data Breaches, AI and More
月光博客
月光博客
IT之家
IT之家
量子位
宝玉的分享
宝玉的分享
S
SegmentFault 最新的问题
Stack Overflow Blog
Stack Overflow Blog
V
Visual Studio Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
雷峰网
雷峰网

博客园 - bestcomy

在OPENSUE 11.3 上安装 sysstat Upload bug in MOSS 2007 / Windows Server 2008 - bestcomy Excel列名转换 Clienside ProgressIndicator - bestcomy - 博客园 ASP.NET MVC 源代码发布! 微软项目组招聘.NET开发人员(北京) 欢迎访问我的新BLOG空间 SharePoint 胡言乱语 你觉得vs.net那些地方让你使用起来很不爽? Include javascript and css dynamically - bestcomy Two ways to get HtmlTextWriter for HTML rendering Get the true value of a calculate field in SharePoint 调用自定义event时需要注意的一个问题 self==top 如何设置AD用户的"用户下次登陆时须更改密码"属性 (LDAP Provider) 微软 and 香烟 Cool!!! Virtual Earth Technology Preview sth about our coding life 还没有Windows Live Messenger的朋友看过来
How to set value for webpart’s properties when I create a...
bestcomy · 2006-10-31 · via 博客园 - bestcomy

When I create a new sharepoint template for my project use, I want to set the value for webpart’s properties as soon as the site created using this template. Adding a list by default is easy after my reading of the great article from http://aspalliance.com/ . I have developed a webpart for list displaying, and I know how to add this webpart in the rootweb by default, but I don’t know how to set value for the webpart’s properties by default. When I open a Onet.xml from one built-in template I got a example as follows:

 1 <AllUsersWebPart WebPartZoneID="Right" WebPartOrder="1">
 2                    <![CDATA[
 3                    <WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" xmlns:iwp="http://schemas.microsoft.com/WebPart/v2/Image">
 4                         <Assembly>Microsoft.SharePoint, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</Assembly>
 5                         <TypeName>Microsoft.SharePoint.WebPartPages.ImageWebPart</TypeName>
 6                         <FrameType>None</FrameType>
 7                         <Title>网站图像</Title>
 8                         <iwp:ImageLink>/_layouts/images/homepage.gif</iwp:ImageLink>
 9                    </WebPart>
10                    ]]>
11                 </AllUsersWebPart>

I believe line 8 is the key of my problem. And now the problem is how to set the iwp prefix. After my reflector of Microsoft.SharePoint.WebPartPages.ImageWebPart, I got some interesting code fragment below:

1 [Guid("20743A06-C4E6-4984-A8A0-918C34353148"), XmlRoot(Namespace="http://schemas.microsoft.com/WebPart/v2/Image")]
2 public sealed class ImageWebPart : WebPart, IDesignTimeHtmlProvider, ICellConsumer
3 {
4 //
5 }

Compare xmlns:iwp="http://schemas.microsoft.com/WebPart/v2/Image" to  XmlRoot(Namespace="http://schemas.microsoft.com/WebPart/v2/Image"), I know the answer. my webpart xmlroot is "Microsoft.MCS.HPITeam.Portal.WebParts", so I registered my webpart as following:

<AllUsersWebPart WebPartZoneID="Middle" WebPartOrder="2">
                   
<![CDATA[
                   <WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" xmlns:dtl="Microsoft.MCS.HPITeam.Portal.WebParts">
                        <Assembly>Microsoft.MCS.HPITeam.Portal.WebParts, Version=1.0.0.0, Culture=neutral, PublicKeyToken=541eeb7342aeb9f8</Assembly>
                        <TypeName>Microsoft.MCS.HPITeam.Portal.WebParts.DocumentTopList</TypeName>
                        <FrameType>None</FrameType>
                        <Title>部门动态</Title>
                        <dtl:DocumentLibraryName>部门动态</dtl:DocumentLibraryName>
                        <dtl:DisplayTitle>部门动态</dtl:DisplayTitle>
                        <dtl:DisplayWidth>500</dtl:DisplayWidth>
                   </WebPart>
                   
]]>
                
</AllUsersWebPart>