我知道這已被問到,但我有一個比其他相關問題更復雜的問題。用戶控件引用樣式表/腳本
我需要從我的usercontrol引用CSS和JS。
參考文獻必須在<head>
標記內呈現。出於這個原因,我不能使用ScriptManager.RegisterClientScriptBlock
其他解決方案,我發現:
HtmlLink link = new HtmlLink();
link.Href = "/path/style.css";
link.Attributes["type"] = "text/css";
link.Attributes["rel"] = "stylesheet";
Page.Header.Controls.Add(link);
然而,這結束了「Controls集合不能修改,因爲該控件包含代碼塊」 的問題是這些代碼塊位於主頁面文件中,我無法控制。因此,在this thread中建議的解決方法是不可能的。 (如:包代碼塊<asp:placeholder ID="Placeholder1" runat="server">
或<%#
因此,考慮上述限制更換<%=
,纔有可能把<link href='path' />
和<script src='path' />
內<head>
標籤由用戶控制
仍然產生相同的錯誤:***「Controls集合不能被修改,因爲該控件包含代碼塊(即<% ... %>)。「*** –