2009-03-01 6 views
3

私はカスタムWebパーツを開発しました。 STSADMを介してアクティブにすると、WebパーツをWSSサイトのデフォルトページに追加する機能を作成したいと思います。うまくいけば、これはコードを書かずに行うことができます。機能を介してデフォルトのWSSページにwebpartを追加する

このwebpartは、Webアプリケーションのbinディレクトリにデプロイされ、featurereceiverをGACにインストールする必要があります。 AllUsersWebPart要素は有望に見えますが、それをどのように動作させるかを理解できません。

TIA、

JT

答えて

4

AllUsersWebPartタグは、私たちは1つのWebパーツを挿入し、我々はWebPartOrderとのWebPartZone属性を使用したい場所に置くことができます。タグの内容は、webpartのdwp(またはwebpart)です。例えば、DWP用:Webパーツについては

<AllUsersWebPart WebPartZoneID="MiddleLeftZone" WebPartOrder="0"> 
    <![CDATA[            
     <WebPart xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/WebPart/v2"> 
     <FrameType>None</FrameType> 
     <AllowMinimize>true</AllowMinimize> 
     <IsVisible>true</IsVisible> 
     <Assembly>Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</Assembly> 
     <TypeName>Microsoft.SharePoint.WebPartPages.ContentEditorWebPart</TypeName> 
     <ContentLink xmlns="http://schemas.microsoft.com/WebPart/v2/ContentEditor" /> 
     <Content xmlns="http://schemas.microsoft.com/WebPart/v2/ContentEditor"> 
      <Value>&lt;iframe src="$Resources:Summary_Url;" frameborder="0" scrolling="no" width="100%" height="100%"&gt;&lt;/iframe&gt;</Value> 
     </Content> 
     <PartStorage xmlns="http://schemas.microsoft.com/WebPart/v2/ContentEditor" /> 
    </WebPart> 
    ]]> 
    </AllUsersWebPart> 

<AllUsersWebPart WebPartZoneID="MiddleLeftZone" WebPartOrder="1"> 
    <![CDATA[            
     <webParts> 
     <webPart xmlns="http://schemas.microsoft.com/WebPart/v3"> 
      <metaData> 
      <type name="MyClass, MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f3b9d1137704f880" /> 
      <importErrorMessage>No se puede importar este elemento Web.</importErrorMessage> 
      </metaData> 
      <data> 
      <properties> 
       <property name="AllowClose" type="bool">False</property> 
       <property name="AllowMinimize" type="bool">False</property> 
       <property name="AllowConnect" type="bool">True</property> 
       <property name="ChromeType" type="chrometype">None</property> 
       <property name="Hidden" type="bool">False</property> 
       <property name="AllowEdit" type="bool">False</property> 
       <property name="AllowZoneChange" type="bool">False</property> 
       <property name="MissingAssembly" type="string">No se puede importar este elemento Web.</property> 
       <property name="ChromeState" type="chromestate">Normal</property> 
      </properties> 
      </data> 
     </webPart> 
     </webParts> 
    ]]> 
    </AllUsersWebPart> 

私は前に試していないが、私は、ウェブが作成されたら、それを行うことができると思います。試してみてください。

+0

私は、機能のelementmanifestファイルに運がなかった。 – Jason

+0

この2つの例は、私が顧客に作った機能から取ったものです。最初のものは、機能のリソースファイルから読み込まれたソースURLを持つiframeを持つコンテンツWebパーツを追加します。 2番目は私自身のWebパーツですが、変更する必要があるのはアセンブリ宣言だけです。 – jaloplo

+0

@jaloploありがとうございました!私は自分の仕事のカスタムWebパーツを手に入れることができず、.dwpと.webpartがスキーマで異なって扱われていることを知りませんでした。あなたの投稿を見つけたので、私はこの問題を解決できました! –

関連する問題