入れ子のマスターページ追加
入れ子のマスターページは、親のマスターページを継承した形で存在するので、入れ子マスターページを追加するときは、既に作成したマスタページを指定する必要があります。
それでは、入れ子のマスターページをプロジェクトに追加します。
HanbaiKanriSiteプロジェクトを開きます。ソリューションエクスプロラーの HanbaiKanriSiteを右クリックして、[追加(D)]→[新しい項目の追加(W)]を選択すると、[新しい項目の追加]フォームが開きます。
[新しい項目の追加]フォームが開いたら、
- マスターページを選択
- マスターページの名前を NestedHanbaiKanri.master に変更
- [別のファイルにコードを書き込む]と[マスターページの選択]が共にチェックされていることを確認
- [追加(A)]ボタンをクリック
[マスターページを選択]フォームが開くので、ここで親のマスターページとして、HanbaiKanri.masterを選択し、[OK]ボタンをクリックします。
NestedHanbaiKanri.masterファイルが、プロジェクトに追加されます。
デザイン画面が表示されていたら、[ソース]タブをクリックして、ソースリストを表示します。
自動生成されたソースりストは次のようになります。先頭行は、長いので適当に折り返しています。
<%@ Master Language="VB" MasterPageFile="~/HanbaiKanri.master" AutoEventWireup="false" CodeFile="NestedMasterPage.master.vb" Inherits="NestedMasterPage" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> </asp:Content>
追加コーディング
追加されたマスターページHanbaiKanri.masterの<asp:Content ID="Content2" ...... > と </asp:Content>との間に、サイドメニューとページコンテンツ領域を追加コーディングします。
- <div id="sideMenu"> と </div>を追加して、下のようにマスター保守メニューを追加
- ページコンテンツ領域として、<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> を追加
<%@ Master Language="VB" MasterPageFile="~/HanbaiKanri.master" AutoEventWireup="false" CodeFile="NestedHanbaiKanri.master.vb" Inherits="NestedHanbaiKanri" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> <div id="sideMenu"> <p>得意先マスター保守</p> <ul> <li><asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/WebFormX1.aspx">照 会</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl="~/WebFormX2.aspx">追 加</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="~/WebFormX3.aspx">更 新</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink4" runat="server" NavigateUrl="~/WebFormX4.aspx">削 除</asp:HyperLink></li> </ul> <p>商品マスター保守</p> <ul> <li><asp:HyperLink ID="HyperLink5" runat="server" NavigateUrl="~/WebFormX5.aspx">照 会</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink6" runat="server" NavigateUrl="~/WebFormX6.aspx">追 加</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink7" runat="server" NavigateUrl="~/WebFormX7.aspx">更 新</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink8" runat="server" NavigateUrl="~/WebFormX8.aspx">削 除</asp:HyperLink></li> </ul> <p>社員マスター保守</p> <ul> <li><asp:HyperLink ID="HyperLink9" runat="server" NavigateUrl="~/WebFormX9.aspx">照 会</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink10" runat="server" NavigateUrl="~/WebFormX10.aspx">追 加</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink11" runat="server" NavigateUrl="~/WebFormX11.aspx">更 新</asp:HyperLink></li> <li><asp:HyperLink ID="HyperLink12" runat="server" NavigateUrl="~/WebFormX12.aspx">削 除</asp:HyperLink></li> </ul> <p>以下省略</p> </div> <h1>マスターファイル保守</h1> <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder> </asp:Content>