Day02-2

目的

マスタページ

概要

PlaceHolder(置き場所)

コンテンツページ

マスタページの設定方法

コンテンツ作成時に、「マスタページを選択する。」を有効にして適用するマスタページを選択する。

※ プレイスホルダは、複数選択することが可能

マスタページとコンテンツの関連付け

マスタページ側

<%@ Master Language="VB" %> ・・・(1)
・・・中略・・・
<asp:contentplaceholder id="cph" tunat="server">
</asp:contentplaceholder>
  1. @Masterディレクティヴでマスタページの挙動を定義する。

コンテンツページ側

<%@ Page Language="VB" _
MasterPageFile="~/Day02/MyMaster.master" _ ・・・(1)
Title="コンテンツページ" %>
<asp:Content ID="Content 1" ContentPlaceHolderID="cph" _
Runat="Server"> ・・・(2)
・・・中略・・・
</asp:Content>
  1. MasterPageFile属性を指定して、マスタ/コンテンツページを関連付ける。
  2. ContentPlaceHolderID属性を指定して、マスタのコンテンツ/コンテンツを関連付ける。

マスタページを入れ子に指定する方法

具体的な方法

マスタページの内容を動的に変更する

サンプル

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

Protected mst As MasterPage = Page.Master
	Dim img As Image = DirectCast(mst.FindControl("img), Image)
	img.ImageUrl = "http://www.web-deli.com/image/logo.gif"
End Sub

解説

Controlオブジェクト
FindControlメソッド
DirectCast

Tip: アプリケーション共通のページ設定を定義するには?

例: アプリケーション内でセッション機能を無効にする方法

<pages>要素で利用可能な主な属性

属性 概要 デフォルト値
buffer 応答バッファを有効にするか true
compilationMode ページコンパイルを有効にするか Always
enableSessionState セッションを使用するか true
enableViewState ビューステートを使用するか true
enableViewStateMac ビューステートの妥当性検証機能を利用するか true
maintainScrollPositionOnPostBack ポストバックの前後でスクロール位置を維持するか false
masterPageFile ページを適用するマスタページ -
maxPageStateFieldLength ビィーステートひとつ辺りの最大文字列長 -1(無制限)
styleSheetTheme ページに適応するテーマ -
theme ページに適用するテーマ -
validationRequest リクエストデータの検証結果を行うか true
viewStateEncryptionMode ビューステートの暗号化モード Auto

まとめ

以上

TOPへ