Соединение таблицы стилей CSS с пользовательским элементом управления ASP.NET

Я разрабатываю пользовательский элемент управления, который является составом таблиц и кнопок. У меня также есть внешняя таблица стилей CSS, которая определяет стили для этих элементов.

Типом Управления является CompositeControl под пространством имен, MyControls и определение класса находятся в файле класса, CompositeControl.cs и dll сгенерированный файл называют MyControls.dll

Таблицу стилей называют styles.css и находится в той же папке как CompositeControl.cs

Для каждого управления (Кнопка, TableCell, и т.д.), я указал CssClass свойство.

Когда я добавляю это управление к своей веб-странице ASP.NET и проверяю источник HTML, когда выполнено в localhost, я вижу, что все теги управления имеют атрибут класса правильно набор, но источник не включает <link> тег, который необходим для включения внешней таблицы стилей.

Кто-то мог сказать мне, что еще я должен сделать для создания этой работы?Спасибо.

7
задан Tim Medora 29 December 2010 в 04:22
поделиться

1 ответ

Внешние исходные файлы не включаются в страницу автоматически. Вы должны зарегистрировать их вручную в вашем контроле на странице :

HtmlLink cssSource = new HtmlLink();
cssSource.Href = Page.ClientScript.GetWebResourceUrl(this.GetType(), "styles.css");
cssSource.Attributes["rel"] = "stylesheet";
cssSource.Attributes["type"] = "text/css";
Page.Header.Controls.Add(cssSource);

Также попробуйте использовать ClientScriptManager.GetWebResourceUrl для получения местоположения вашего встроенного ресурса. Вот пример ссылки на встроенный ресурс.

7
ответ дан 7 December 2019 в 07:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: