How to make user controls know about css classes in ASP.NET How to make user controls know about css classes in ASP.NET asp.net asp.net

How to make user controls know about css classes in ASP.NET


Here's what I did:

<link rel="Stylesheet" type="text/css" href="Stylesheet.css" id="style" runat="server" visible="false" />

It fools Visual Studio into thinking you've added a stylesheet to the page but it doesn't get rendered.


Here's an even more concise way to do this with multiple references;

<% if (false) { %>    <link rel="Stylesheet" type="text/css" href="Stylesheet.css" />    <script type="text/javascript" src="js/jquery-1.2.6.js" /><% } %>

As seen in this blog post from Phil Haack.


Add the style on your usercontrol and import css in it.

 <%@ 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 


If you are creating composite UserControl, then you can set the CSSClass property on the child controls..

If not, then you need to expose properties that are either of the Style type, or (as I often do) string properties that apply CSS at the render type (i.e. take them properties and add a style attribute to the HTML tags when rendering).