我有一个母版页,希望在上面添加两个占位符——这样我就可以在母版页的两个位置使用相同的占位符,而实际页面只需一次指定占位符的内容,并且该内容会在结果页面上呈现两次。目标是避免重复内容。
如果我尝试两次添加相同id的占位符,则无法编译——ASP.NET不支持这种情况。
那么我该如何实现呢?还有其他选项吗?
如果我尝试两次添加相同id的占位符,则无法编译——ASP.NET不支持这种情况。
那么我该如何实现呢?还有其他选项吗?
将您的占位符放置在一个Action
中,在必要时调用它。
<%
Action myPlaceholder = () =>
{%>
<asp:ContentPlaceHolder ID="X" runat="server" />
<%}
%>
...然后在代码中在必要的地方进行调用。
<% if (conditionMet)
myPlaceholder(); >%
我认为你可能正在寻找一个用户控件:
http://msdn.microsoft.com/en-us/library/y6wb1a0e.aspx
使用用户控件,您可以将标记和代码放入一个 .ascx
文件中,然后在主页面/ Web 表单中多次调用它,从而避免重复的代码。