我在我网站上的几个区域使用.net内容占位符。大多数情况下,他们将对内容使用一个用户控件。如果没有从内容页面传入任何内容,.NET中有没有办法为内容占位符指定“后备”?占位符位于我的Site.Master FYI
由于
答案 0 :(得分:2)
这正是<asp:ContentPlaceHolder>
标记的设计目标。将默认内容放在母版页中,如果不覆盖子页面中的占位符,则会显示默认内容,例如
母版页
<%@ Master Language="C#" %>
...
<asp:ContentPlaceHolder ID="MyPlaceHolder" runat="server">
<!-- default content -->
</asp:ContentPlaceHolder>
儿童页面
<asp:Content ID="ChildPlaceHolder" ContentPlaceHolderID="MyPlaceHolder" Runat="Server">
<!-- override default content -->
</asp:Content>
答案 1 :(得分:2)
除非我完全误解了您的意思,否则您可以将默认内容放在主页面的<asp:ContentPlaceHolder>
元素中。如果未定义客户端页面中相应的<asp:Content
元素,则将使用默认内容。
例如,在您的母版页中......
<asp:ContentPlaceHolder ID="myPlaceHolder" runat="server">
<b>Hello World</b>
</asp:ContentPlaceHolder>