喜帳面の日記

50歳越えおやじのASP.NET MVC への挑戦日記です。

ASP.Netでいってみる WebForm VB 1 マスタページのコンテンツプレスホルダー

 

実は、SQL Serverを使ったクラサバシステムのSEをやってたんで

第1章 Visual BasicによるWebシステム開発

第2章 データベースとSQLの基礎

第3章 システムの基本設計

第4章 SQL Serverデータベースの準備

ここまでは本に目を通す程度で流しちゃいました。

ちなみに、

データベースは、SQL Server 2012 Express Edition (64-bit)を

Visual Studio は、Visual Web Developer 2010 Express

をインストールしました。

では、第5章 リスト型画面の作成1-フォームの作成に突入  するも

 4 データソースを登録する で進めなくなってしまった!

参考書によると、Webフォームデザイナーの[デザイン]画面でツールボックスから[SqlDataSource]をダブルクリックすると「フォーム上にデータソースのスマートタグが表示される」はずなのですが、[SqlDataSource]をダブルクリックしてもポピンと警告音がするだけ。

f:id:SannomiyaNotes:20120720062458j:plainフォーム上にマウスを移動させるとアイコンは「車両通行止め」状態になってしまう。

いろいろ試行錯誤、新しいWebフォームを追加するときに「マスターページを選択」のチェックをはずしマスターページなしでフォームを追加すると、[SqlDataSource]が配置できることから、「マスターページの準備」の工程で何かのミスをしてる。

もう一度、「2 マスターページを準備する」をやり直す。

で気が付いたのがP94の以下の記述。

「以上で、マスタページの準備ができました。デザインビューに切り替えるとわかるように、作成直後のマスタページにはコンテンツプレスホルダー(ContentPlaceHolder)だけが配置されています。

このコンテンツプレスホルダーの内部は、マスターページを使用するWebフォームで個々のデザインを記述するための枠として使用するため、マスタページでは変更しないようにしてください。

 もう一度マスタページを見直すと、ContentPlaceHolderが見当たらなくなってる。

どうやら、タイトルバナーなどを配置する際の操作の部分

「コンテンツプレスホルダーをクリックしてから[←]を押し、[Enter]を押す。

⇒空の行が作成される」

ここで失敗したらしい。コンテンツプレスホルダーを変更もしくはコンテンツプレスホルダーを削除したみたい。

この操作はコンテンツプレスホルダーの前にコントロールを配置する為の操作なんですね。

失敗:f:id:SannomiyaNotes:20120720063055j:plain

   ↑:ContentPlaceHolderがなくなってしまってる。

 

正解:f:id:SannomiyaNotes:20120720063255j:plain

 

「マスタページでは、コンテンツプレスホルダーに個々のWebフォームのデザインが挿入されていることを念頭に置いて、その外側に共通のデザイン要素をのためのコントロールを配置します。」

この記述の意味を再確認できました。