2

Visual Studio(C#)でSharepoint2010のリスト定義とリストインスタンスを作成しました。また、デフォルトでレイアウトフォルダに保存されるアプリケーションページも作成しました。私の目標は、そのページを私のリストの新しい形式にすることです。私が理解したように、それはリストスキーマのその部分で行われるべきです:

<Forms>
  <Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
  <Form Type="EditForm" Url="EditForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
  <Form Type="NewForm" Url="NewForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
</Forms>

私が試した:

1)タグを追加<New>_layouts/PIUVS/ProjectsNew.aspx</New>します。<forms>=>その後何も起こりません

2)SetupPathを "_layouts / PIUVS / ProjectsNew.aspx"に変更します=>展開中にエラーが表示されます:展開ステップでエラーが発生しました'機能のアクティブ化':システムは指定されたファイルを見つけることができません。(HRESULTからの例外:0x80070002)

PS私はSPDesignerやそのようなプログラムを使用していません。

4

1 に答える 1

0

解決策を見つけました。

これは、スキーマ ファイルで厳密に行う必要はありません。

SharePoint2010 のリストにカスタム フォームを追加するには、コンテンツ タイプを変更する必要があります。<ContentType>タグに次を追加します。

<XmlDocuments>
  <XmlDocument NamespaceURI="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms/url">
    <FormsUrls xmlns="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms/url">
      <New>_layouts/PIUVS/ProjectsNew.aspx</New>
    </FormsUrls>
  </XmlDocument>
</XmlDocuments>

リストのスキーマの ContentType 参照にもこれをコピーします。

于 2012-04-23T07:05:39.260 に答える