2011-11-03 61 views
3

我有一個母版頁,我想添加一個佔位符兩次 - 以便在母版頁的兩個位置有相同的佔位符,以便實際頁面只指定佔位符的內容一次,並且內容在結果上呈現兩次頁。目標是避免內容重複。如何在母版頁上放置兩次佔位符?

如果我嘗試使用相同的id添加一個佔位符兩次,它將不會編譯 - ASP.NET不喜歡那樣。

我該如何做到這一點?什麼是其他選項?

+0

你可以發表一個例子嗎? –

+0

你打算如何設置內容?在標記或代碼隱藏? –

+0

我面臨同樣的問題一次,我從我想複製的內容組成用戶控件。雜亂,可能不是解決這個問題的最好方法,但它完成了工作。 – Alex

回答

1

將您的佔位符放在Action中,並在必要時調用它。

<% 
    Action myPlaceholder =() => 
    {%> 
     <asp:ContentPlaceHolder ID="X" runat="server" /> 
    <%} 
%> 

...然後在代碼中調用任何必要的代碼。

<% if (conditionMet) 
    myPlaceholder(); >% 

錯誤發生在編譯時間:如果存在具有相同ID的佔位符投訴將會作出修改。這種方法消除了這一障礙,並提供了很大的靈活性。

相關問題