SharePoint プロジェクトには、ユーザーが編集モードでカスタム チェックボックス (「ニュースとして表示」) を設定できるページ レイアウトがあります。現在、顧客から、このチェックボックスをデフォルトでオンに設定できるかどうか尋ねられました。
<SharePointWebControls:BooleanField>
チェックボックスはレイアウト ページでとして実現され<Field Type="Boolean">
、サイト列定義で対応します。
サイト列の定義にa を追加しようとしました<Default>1</Default>
が、SiteSettings を使用してサイト列のデフォルト値を変更すると、これが機能し、チェックボックスが新しいページのデフォルトでオンになっているように見えました。ただし、そのフィールド (同じコンテンツ タイプ) も使用し、デフォルトで値をチェックしたくない他のレイアウトがあります。
したがって、私の考えは、ページが作成された場合にイベント レシーバーにフィールド値を設定することでした。レシーバーは正しく呼び出され、アイテムは利用可能ですが、イベント プロパティを通じて取得したアイテムからページ レイアウトを決定する方法が見つからないようです。フィールドを介して直接レイアウトにアクセスしようとしitem["PublishingPageLayout"]
ましたが、ページを PublishingPage として取得してから呼び出しpublishingPage.Layout.Name
ましたが、どちらの場合もレイアウトに使用できる値 (null) はありません。
誰かがレイアウトを見つける別の方法を提案できれば幸いです。または、私が望むものを達成するためのまったく別の方法かもしれません。