2011-08-09 14 views
0

私は、Webパーツを実行するXSLTファイルに接続するXSLリンクプロパティを持つカスタムWebパーツを作成しています。私は、チェックすると、Webパーツが別のXSLTファイルにリンクする別のブール値フィールドを作成したいと思っています。これは標準のWebパーツではないため、get/setメソッドを使用することはできません。私はこのWebパーツを駆動しているC#のページを持っていません。私はプロパティのすべての値を持っている.webpartファイルを持っています、そして、私はこれがコードを置く必要があると思います。私はこれをどうやって行うのか分かりません。どんな助けでも大歓迎です。以下は.webpartファイルの一部です:DataFormWebPartでカスタムプロパティを作成する方法

<webParts> 
<webPart xmlns="http://schemas.microsoft.com/WebPart/v3"> 
<metaData> 
    <type name="Microsoft.SharePoint.WebPartPages.DataFormWebPart, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" /> 
    <importErrorMessage>Cannot import this Web Part.</importErrorMessage> 
</metaData> 
<data> 
    <properties> 
    <property name="PageSize" type="int">-1</property> 
    <property name="HelpMode" type="helpmode">Modeless</property> 
    <property name="Height" type="string" /> 
    <property name="SampleData" type="string" null="true" /> 
    <property name="AllowConnect" type="bool">True</property> 
    <property name="CatalogIconImageUrl" type="string" /> 
    <property name="XslLink" type="string">/home/appbar.xslt</property> 
    <property name="AllowClose" type="bool">True</property> 
    <property name="Hidden" type="bool">False</property> 
    <property name="MissingAssembly" type="string">Cannot import this Web Part.</property> 
    <property name="TitleIconImageUrl" type="string" /> 
    <property name="ChromeState" type="chromestate">Normal</property> 
    <property name="FireInitialRow" type="bool">True</property> 
    <property name="Description" type="string" /> 
    <property name="AllowMinimize" type="bool">True</property> 
    <property name="Xsl" type="string" null="true" /> 

<property name="ExportMode" type="exportmode">All</property> 
    <property name="AllowZoneChange" type="bool">True</property> 
    <property name="Default" type="string" /> 
    <property name="UseSQLDataSourcePaging" type="bool">True</property> 
    <property name="ParameterBindings" type="string"> 
        &lt;ParameterBinding Name="ListName" Location="None" DefaultValue="MDocLinks"/&gt; 
        &lt;ParameterBinding Name="dvt_apos" Location="Postback;Connection"/&gt; 
        &lt;ParameterBinding Name="UserID" Location="CAMLVariable" DefaultValue="CurrentUserName"/&gt; 
        &lt;ParameterBinding Name="Today" Location="CAMLVariable" DefaultValue="CurrentDate"/&gt; 
       </property> 
    <property name="DisplayName" type="string" /> 
    <property name="NoDefaultStyle" type="string">TRUE</property> 
    <property name="Title" type="string">MDock</property> 
    <property name="AllowHide" type="bool">True</property> 
    <property name="ViewFlag" type="string">0</property> 
    </properties> 
</data> 
</webPart> 
</webParts> 

これは大部分です。私はあまりにも多くのページをいっぱいにしたくありませんでした。 :)

答えて

1

.webpartは単にWebパーツの定義です。バックエンドコードはすでに存在しています。あなたは単にどのアセンブリ/クラスが処理を担当しているかを定義しています。

あなたが言及していることを達成するには、DataFormWebPartを継承するビジュアルスタジオで新しいWebパーツを作成する必要があります。

これから、追加のプロパティと条件付き検索ロジックを追加できます。

関連する問題