StackOverflow に参加するのは初めてで、ここに来られて光栄です。皆さんと楽しい時間を過ごし、私にできることは何でもお手伝いできることを願っています。
私が尋ねている質問は、私がタイトルに入れたものです.4つのユーザーコントロールを持つマスターページを使用してマスターページを埋めていますが、ユーザーコントロールの1つ(プリンシパル. ascx) 私は、ロードされているページに応じてその中のデータを変更したいウィッチを使用して PlaceHolder を配置しました。たとえば、Register Employee ページをロードする場合は、それをプレースホルダーに送信して表示しますプレースホルダーに送信して表示するログインページをロードしたいと思います。だから私が扱っているコードは次のとおりです。
マスターページ:
<%@ Register Src="~/UserControl/Head.ascx" TagName="Head" TagPrefix="hdr" %>
<%@ Register Src="~/UserControl/Foot.ascx" TagName="Foot" TagPrefix="ftr" %>
<%@ Register Src="~/UserControl/Menu.ascx" TagName="Menu" Tagprefix="mnu" %>
<%@ Register Src="~/UserControl/Principal.ascx" TagName="Principal" Tagprefix="prn" %>
<link rel="Stylesheet" type="text/css" href="~/Css/Styles.css" />
<asp:ContentPlaceHolder ID="head" runat="server"></asp:ContentPlaceHolder>
</head>
<body>
<form runat="server" id="MainForm">
<div class="Container">
<hdr:Head runat="server" ID="hdrHead" />
<mnu:Menu runat="server" ID="menMenu" />
<prn:Principal runat="server" ID="priPincipal" />
<ftr:Foot runat="server" ID="ftrFoot" />
</div>
</form>
</body>
</html>
マスター ページにはまだコード ビハインドはありません。
また、Menu UserControl は、JQuery UI を使用して管理されるシンプルなメニューです。UserControl でログイン ページを機能させることができたら、このメニューを動的にして、アクセスするユーザーに関連するメニュー レベルのみを表示するようにします。ページ:
<link rel="Stylesheet" type="text/css" href="../Css/jquery-ui-1.10.0.css" />
<script src="../Js/jquery-1.9.1.js" type="text/javascript"></script>
<script src="../Js/jquery-ui-1.10.0.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$("#menu").menu();
});
</script>
<div class="MenuContainer">
<span style="margin: 20px 10px; padding: 5px;">
Bienvenido, Usuario.
</span>
<div class="Menu">
<ul id="menu">
<li><a href="#">Inicio</a></li>
<li><a href="#">Base de Conocimientos</a>
<ul>
<li><a href="#">Vista general</a></li>
<li><a href="#">Agregar</a></li>
</ul>
</li>
<li><a href="#">Documentación HGI</a>
<ul>
<li><a href="#">Documentos</a></li>
<li><a href="#">Agregar</a></li>
</ul>
</li>
<li><a href="#">Beneficios</a>
<ul>
<li><a href="#">Medio día libre</a></li>
<li><a href="#">Vacaciones</a></li>
</ul>
</li>
<li><a href="#">Mantenimiento</a>
<ul>
<li><a href="#">Códigos</a>
<ul>
<li><a href="#">Vista General</a></li>
<li><a href="#">Agregar</a></li>
</ul>
</li>
<li><a href="#">Configuraciones</a>
<ul>
<li><a href="#">Vista General</a></li>
<li><a href="#">Agregar</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Salir</a></li>
</ul>
</div>
</div>
そして、コンテンツをロードしたい UserControl は Principal.ascx を呼び出します:
<div class="Contenido">
<asp:PlaceHolder runat="server" ID="PlaceHolder">
</asp:PlaceHolder>
</div>
ページ default.aspx からのテスト テキストをプレース ホルダーに表示したい:
<span>
This is the test.
<span/>
UserControls または MasterPage のいずれにも、.cs ページに任意のタイプのコードがありません。