Я использую приведенный ниже код для динамического включения файла CSS:
HtmlHead head = (HtmlHead)Page.Header;
HtmlLink link = new HtmlLink();
link.Attributes.Add("href", Page.ResolveClientUrl("~/App_Themes/Default/StyleSheet.css"));
link.Attributes.Add("type", "text/css");
link.Attributes.Add("rel", "stylesheet");
head.Controls.Add(link);
Проблема в том, что я хочу сделать это только один раз и только в том случае, если это еще не включено на страницу.
Как мне проверить, что он уже включен?
Изменить:
Ответы, в которых говорится, что я должен включить загрузку страницы с помощью !IsPostBack
, не решат мою проблему, так как этот код будет находиться внутри пользовательского веб-элемента управления, а на моей странице может быть много такого же пользовательского элемента управления.
Например, я использую приведенный ниже код, чтобы сделать это с помощью javascript:
if (!Page.ClientScript.IsClientScriptIncludeRegistered("jsScript"))
{
Page.ClientScript.RegisterClientScriptInclude("jsScript", ResolveUrl("~/Utilities/myScript.js"));
}