リスト アイテム フォーム ページ
最終更新日: 2010年4月9日
適用対象: SharePoint Foundation 2010
この記事の内容
リスト アイテム フォームおよびマスタ ページ
表示フォームのレンダリング
リストを作成または変更するカスタム ページを指定する
多くの Microsoft SharePoint Foundation リストのリスト アイテム フォーム ページ (DisplayForm.aspx、EditForm.aspx、および NewForm.aspx) は、%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\Pages にあるのと同じ Form.aspx ファイルに基づいています。このファイルは、%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\GLOBAL にある SharePoint Foundation の default.master ファイルを実装しています。
既定では、リスト フォーム ページはスケーラビリティ向上のためにコンパイルなしモードで実行されます。SharePoint Foundation でフォーム ページにコードを作成するには、ユーザー インターフェイスでページ上でのコードの使用を有効にする必要があります。
リスト アイテム フォームおよびマスタ ページ
既定のリスト フォーム ページは既定のマスター ページに従って作成されており、コントロールの各領域はページ上にプレースホルダーで表されます。リスト フォーム ページにはツール バー、ヘッダー、本体、フッターのプレースホルダーがあります。これらのプレースホルダーで使用するコントロールはフォーム ページごとに異なり、ネストの (派生した) マスター ページを使用した全体的なマスター ページの設計が必要になります。
マスター ページでは、リスト アイテム フォームに表示する枠線やナビゲーション領域を定義します。SharePoint Foundation のマスター ページの詳細については、「マスター ページ」を参照してください。
Form.aspx ファイルでは、ページ本体に ListFormWebPart オブジェクトを挿入する Microsoft.SharePoint.WebPartPages.WebPartZone コントロールが使用されています。ページのコンテンツを表示するため、この Web パーツは ListForm コントロールをインスタンス化します。このコントロールのテンプレートは %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\CONTROLTEMPLATES\DefaultTemplates.ascx に定義されています。ListForm コントロールでは、ツール バー、フィールド、およびフォームのその他のパーツのレイアウトに HTML マークアップおよびコントロール テンプレートが使用されています。カスタム ListForm コントロールを指定するには、ListFormWebPart クラスのテンプレート プロパティを使用します。
重要 |
---|
SharePoint Foundation がフロントエンド Web サーバーにインストールしたファイルを編集することはできません。もともと製品にインストールされているファイルに対する変更は、SharePoint Foundation の更新やサービス パックをインストールしたり、インストールを新しい製品バージョンにアップグレードしたりすると、上書きされる可能性があります。 |
表示フォームのレンダリング
SharePoint Foundation の表示フォームのレンダリングは、編集フォームや新規作成フォームの場合とは若干異なります。それは、表示フォームのレイアウトは編集フォームや新規作成フォームと同じで、多くのコントロールを共有していますが、表示フォームのフィールドはアンマネージ コードで定義され、リスト ビューで使用されているのと同じフィールド レンダリングを使用しているためです。表示モードでは、SharePoint フィールド コントロールはフィールドのレンダリングに Collaborative Application Markup Language のコア スキーマ 定義を使用します。
重要 |
---|
Web パーツをリスト アイテムの表示、編集、および新規作成フォーム (DispForm.aspx、EditForm.aspx、および NewForm.aspx) に追加することはできますが、推奨されません。また、SharePoint Foundation ではサポートされません。リスト ビュー ページ (AllItems.aspx) への Web パーツの追加はサポートされます。 |
リストを作成または変更するカスタム ページを指定する
リストの作成やリスト プロパティの編集を行うカスタム ページを指定するには、リスト定義フィーチャーの ListTemplate 要素に NewPage 属性や EditPage 属性を指定します。
次の例では、リスト定義を使用して作成したリストのカスタム ページを指定しています。
<Elements xmlns="https://schemas.microsoft.com/sharepoint/">
<ListTemplate
Name="MyTemplate"
Type="2100"
BaseType="1"
OnQuickLaunch="TRUE"
SecurityBits="11"
DisplayName="My Custom List Type"
NewPage="MyCreateList.aspx"
EditPage="MyEditList.aspx"
Description="My description..."
Image="/_layouts/images/itsl.gif"
DocumentTemplate="100">
</ListTemplate>
</Elements>