Как заставить пользовательские элементы управления знать о классах CSS в ASP.NET
Поскольку в asp.net нет заголовочных разделов для пользовательских элементов управления, пользовательские элементы управления не имеют возможности узнать о файлах таблиц стилей. Поэтому классы CSS в пользовательских элементах управления не распознаются Visual Studio и выдают предупреждения. Как я могу заставить пользовательский элемент управления знать, что он будет относиться к классу css, поэтому, если он предупреждает меня о несуществующем классе css, это означает, что класс действительно не существует?
Редактировать: Или я должен пойти на другой дизайн, как представление классов CSS в качестве свойств, таких как "HeaderStyle-CssClass" GridView?
4 ответа
Вот что я сделал:
<link rel="Stylesheet" type="text/css" href="Stylesheet.css" id="style" runat="server" visible="false" />
Это вводит Visual Studio в заблуждение, что вы добавили таблицу стилей на страницу, но она не отображается.
Вот еще более краткий способ сделать это с несколькими ссылками;
<% if (false) { %>
<link rel="Stylesheet" type="text/css" href="Stylesheet.css" />
<script type="text/javascript" src="js/jquery-1.2.6.js" />
<% } %>
Как видно из этого поста в блоге от Фила Хаака.
Добавьте стиль в свой usercontrol и импортируйте в него css.
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="WCReportCalendar.ascx.vb"
Inherits="Intra.WCReportCalender" %>
<style type='text/css'>
@import url("path of file.css");
// This is how i used jqueryui css
@import url("http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css");
</style>
your html
Если вы создаете составной UserControl, вы можете установить свойство CSSClass для дочерних элементов управления.
Если нет, то вам нужно предоставить свойства, которые имеют тип Style или (как я часто это делаю) строковые свойства, которые применяют CSS к типу рендеринга (т.е. принимают их свойства и добавляют атрибут стиля к тэгам HTML при рендеринге).,
Ты можешь использовать CSS
прямо в userControl
,
Используйте это в UserControl
:
<head>
<title></title>
<style type="text/css">
.wrapper {
margin: 0 auto -142px;
/* the bottom margin is the negative value of the footer's height */
}
</style>
</head>
Это будет работать