Represents the style of a Web server control.
Namespace:
System.Web.UI.WebControls
Assembly:
System.Web (in System.Web.dll)
Visual Basic (Declaration)
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public Class Style _
Inherits Component _
Implements IStateManager
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public class Style : Component, IStateManager
[AspNetHostingPermissionAttribute(SecurityAction::LinkDemand, Level = AspNetHostingPermissionLevel::Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction::InheritanceDemand, Level = AspNetHostingPermissionLevel::Minimal)]
public ref class Style : public Component,
IStateManager
public class Style extends Component implements IStateManager
The Style class encapsulates the properties that control the appearance of a Web server control and can be applied to multiple Web server controls to provide a common appearance. You can specify the background color and font color of a control by setting the BackColor and ForeColor properties, respectively. On controls that can display a border, you can control the border width, the border style, and the border color by setting the BorderWidth, BorderStyle, and BorderColor properties. The size of a Web server control can also be specified by using the Height and Width properties.
This example demonstrates how to use a Style object to change the style properties of multiple controls at once. Each time one of the Style property values changes, each control must call its ApplyStyle method. Note that not all the controls included support all the properties demonstrated. If a control does not support a particular property, the appearance of the control will not change when the property value is changed.
Note: |
|---|
The following code sample uses the single-file code model and may not work correctly if copied directly into a code-behind file. This code sample must be copied into an empty text file that has an .aspx extension. For more information on the Web Forms code model, see ASP.NET Web Page Code Model. |
<!-- -->
...
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Drawing" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private primaryStyle As New Style()
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
If Not Page.IsPostBack Then
' Add data to the borderColorList,
' backColorList, and foreColorList controls.
Dim colors As New ListItemCollection()
colors.Add(Color.Black.Name)
colors.Add(Color.Blue.Name)
colors.Add(Color.Green.Name)
colors.Add(Color.Orange.Name)
colors.Add(Color.Purple.Name)
colors.Add(Color.Red.Name)
colors.Add(Color.White.Name)
colors.Add(Color.Yellow.Name)
borderColorList.DataSource = colors
borderColorList.DataBind()
backColorList.DataSource = colors
backColorList.DataBind()
foreColorList.DataSource = colors
foreColorList.DataBind()
' Add data to the borderStyleList control.
Dim styles As New ListItemCollection()
Dim styleType As Type = GetType(BorderStyle)
Dim s As String
For Each s In [Enum].GetNames(styleType)
styles.Add(s)
Next s
borderStyleList.DataSource = styles
borderStyleList.DataBind()
' Add data to the borderWidthList control.
Dim widths As New ListItemCollection()
Dim i As Integer
For i = 0 To 10
widths.Add(i.ToString() & "px")
Next i
borderWidthList.DataSource = widths
borderWidthList.DataBind()
' Add data to the fontNameList control.
Dim names As New ListItemCollection()
names.Add("Arial")
names.Add("Courier")
names.Add("Garamond")
names.Add("Times New Roman")
names.Add("Verdana")
fontNameList.DataSource = names
fontNameList.DataBind()
' Add data to the fontSizeList control.
Dim fontSizes As New ListItemCollection()
fontSizes.Add("Small")
fontSizes.Add("Medium")
fontSizes.Add("Large")
fontSizes.Add("10pt")
fontSizes.Add("14pt")
fontSizes.Add("20pt")
fontSizeList.DataSource = fontSizes
fontSizeList.DataBind()
' Set primaryStyle as the style for each control.
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End If
End Sub
Sub ChangeBorderColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderColor = _
Color.FromName(borderColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeBackColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BackColor = _
Color.FromName(backColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeForeColor(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.ForeColor = _
Color.FromName(foreColorList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeBorderStyle(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderStyle = _
CType([Enum].Parse(GetType(BorderStyle), _
borderStyleList.SelectedItem.Text), BorderStyle)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeBorderWidth(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.BorderWidth = _
Unit.Parse(borderWidthList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeFont(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.Font.Name = _
fontNameList.SelectedItem.Text
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
Sub ChangeFontSize(ByVal sender As Object, ByVal e As System.EventArgs)
primaryStyle.Font.Size = _
FontUnit.Parse(fontSizeList.SelectedItem.Text)
Label1.ApplyStyle(primaryStyle)
ListBox1.ApplyStyle(primaryStyle)
Button1.ApplyStyle(primaryStyle)
Table1.ApplyStyle(primaryStyle)
TextBox1.ApplyStyle(primaryStyle)
End Sub
</script>
<html >
<head runat="server">
<title>Applied Style Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table cellpadding="6" border="0">
<tr>
<td rowspan="10" style="border:solid 1px Gray">
<p>
<asp:label id="Label1"
Text="Border Properties Example" Runat="server">
Label Styles
</asp:label>
</p>
<p>
<asp:button id="Button1" runat="server"
Text="Button Styles">
</asp:button>
</p>
<p>
<asp:listbox id="ListBox1" Runat="server">
<asp:ListItem Value="0" Text="List Item 0">
</asp:ListItem>
<asp:ListItem Value="1" Text="List Item 1">
</asp:ListItem>
<asp:ListItem Value="2" Text="List Item 2">
</asp:ListItem>
</asp:listbox>
</p>
<p>
<asp:textbox id="TextBox1"
Text="TextBox Styles" Runat="server">
</asp:textbox>
</p>
<p>
<asp:table id="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell Text="(0,0)"></asp:TableCell>
<asp:TableCell Text="(0,1)"></asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell Text="(1,0)"></asp:TableCell>
<asp:TableCell Text="(1,1)"></asp:TableCell>
</asp:TableRow>
</asp:table>
</p>
</td>
<td align="right">
<asp:Label ID="Label2" runat="server"
AssociatedControlID="borderColorList"
Text="Border Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label3" Runat="server"
AssociatedControlID="borderStyleList"
Text="Border Style:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderStyleList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderStyle">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label4" Runat="server"
AssociatedControlID="borderWidthList"
Text="Border Width">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderWidthList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderWidth">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label5" Runat="server"
AssociatedControlID="backColorList"
Text="Back Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="backColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBackColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label6" Runat="server"
AssociatedControlID="foreColorList"
Text="Foreground Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="foreColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeForeColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label7" Runat="server"
AssociatedControlID="fontNameList"
Text="Font Name:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontNameList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFont">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label8" Runat="server"
AssociatedControlID="fontSizeList"
Text="Font Size:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontSizeList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFontSize">
</asp:dropdownlist>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
<!-- -->
...
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Drawing" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private Style primaryStyle = new Style();
void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
// Add data to the borderColorList,
// backColorList, and foreColorList controls.
ListItemCollection colors = new ListItemCollection();
colors.Add(Color.Black.Name);
colors.Add(Color.Blue.Name);
colors.Add(Color.Green.Name);
colors.Add(Color.Orange.Name);
colors.Add(Color.Purple.Name);
colors.Add(Color.Red.Name);
colors.Add(Color.White.Name);
colors.Add(Color.Yellow.Name);
borderColorList.DataSource = colors;
borderColorList.DataBind();
backColorList.DataSource = colors;
backColorList.DataBind();
foreColorList.DataSource = colors;
foreColorList.DataBind();
// Add data to the borderStyleList control.
ListItemCollection styles = new ListItemCollection();
Type styleType = typeof(BorderStyle);
foreach (string s in Enum.GetNames(styleType))
{
styles.Add(s);
}
borderStyleList.DataSource = styles;
borderStyleList.DataBind();
// Add data to the borderWidthList control.
ListItemCollection widths = new ListItemCollection();
for (int i = 0; i < 11; i++)
{
widths.Add(i.ToString() + "px");
}
borderWidthList.DataSource = widths;
borderWidthList.DataBind();
// Add data to the fontNameList control.
ListItemCollection names = new ListItemCollection();
names.Add("Arial");
names.Add("Courier");
names.Add("Garamond");
names.Add("Times New Roman");
names.Add("Verdana");
fontNameList.DataSource = names;
fontNameList.DataBind();
// Add data to the fontSizeList control.
ListItemCollection fontSizes = new ListItemCollection();
fontSizes.Add("Small");
fontSizes.Add("Medium");
fontSizes.Add("Large");
fontSizes.Add("10pt");
fontSizes.Add("14pt");
fontSizes.Add("20pt");
fontSizeList.DataSource = fontSizes;
fontSizeList.DataBind();
//Set primaryStyle as the style for each control.
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
}
void ChangeBorderColor(object sender, System.EventArgs e)
{
primaryStyle.BorderColor =
Color.FromName(borderColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeBackColor(object sender, System.EventArgs e)
{
primaryStyle.BackColor =
Color.FromName(backColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeForeColor(object sender, System.EventArgs e)
{
primaryStyle.ForeColor =
Color.FromName(foreColorList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeBorderStyle(object sender, System.EventArgs e)
{
primaryStyle.BorderStyle =
(BorderStyle)Enum.Parse(typeof(BorderStyle),
borderStyleList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeBorderWidth(object sender, System.EventArgs e)
{
primaryStyle.BorderWidth =
Unit.Parse(borderWidthList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeFont(object sender, System.EventArgs e)
{
primaryStyle.Font.Name =
fontNameList.SelectedItem.Text;
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
void ChangeFontSize(object sender, System.EventArgs e)
{
primaryStyle.Font.Size =
FontUnit.Parse(fontSizeList.SelectedItem.Text);
Label1.ApplyStyle(primaryStyle);
ListBox1.ApplyStyle(primaryStyle);
Button1.ApplyStyle(primaryStyle);
Table1.ApplyStyle(primaryStyle);
TextBox1.ApplyStyle(primaryStyle);
}
</script>
<html >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table cellpadding="6" border="0">
<tr>
<td rowspan="10" style="border:solid 1px Gray">
<p>
<asp:label id="Label1"
Text="Border Properties Example" Runat="server">
Label Styles
</asp:label>
</p>
<p>
<asp:button id="Button1" runat="server"
Text="Button Styles">
</asp:button>
</p>
<p>
<asp:listbox id="ListBox1" Runat="server">
<asp:ListItem Value="0" Text="List Item 0">
</asp:ListItem>
<asp:ListItem Value="1" Text="List Item 1">
</asp:ListItem>
<asp:ListItem Value="2" Text="List Item 2">
</asp:ListItem>
</asp:listbox>
</p>
<p>
<asp:textbox id="TextBox1"
Text="TextBox Styles" Runat="server">
</asp:textbox>
</p>
<p>
<asp:table id="Table1" Runat="server">
<asp:TableRow>
<asp:TableCell Text="(0,0)"></asp:TableCell>
<asp:TableCell Text="(0,1)"></asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableCell Text="(1,0)"></asp:TableCell>
<asp:TableCell Text="(1,1)"></asp:TableCell>
</asp:TableRow>
</asp:table>
</p>
</td>
<td align="right">
<asp:Label ID="Label2" runat="server"
AssociatedControlID="borderColorList"
Text="Border Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label3" Runat="server"
AssociatedControlID="borderStyleList"
Text="Border Style:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderStyleList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderStyle">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label4" Runat="server"
AssociatedControlID="borderWidthList"
Text="Border Width">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="borderWidthList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBorderWidth">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label5" Runat="server"
AssociatedControlID="backColorList"
Text="Back Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="backColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeBackColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label6" Runat="server"
AssociatedControlID="foreColorList"
Text="Foreground Color:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="foreColorList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeForeColor">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label7" Runat="server"
AssociatedControlID="fontNameList"
Text="Font Name:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontNameList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFont">
</asp:dropdownlist>
</td>
</tr>
<tr>
<td align="right">
<asp:Label ID="Label8" Runat="server"
AssociatedControlID="fontSizeList"
Text="Font Size:">
</asp:Label>
</td>
<td>
<asp:dropdownlist id="fontSizeList"
Runat="server" AutoPostBack="True"
OnSelectedIndexChanged="ChangeFontSize">
</asp:dropdownlist>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
System..::.Object
System..::.MarshalByRefObject
System.ComponentModel..::.Component
System.Web.UI.WebControls..::.Style
System.Web.UI.Design..::.DesignerAutoFormatStyle
System.Web.UI.WebControls..::.MenuItemStyle
System.Web.UI.WebControls..::.PanelStyle
System.Web.UI.WebControls..::.SubMenuStyle
System.Web.UI.WebControls..::.TableItemStyle
System.Web.UI.WebControls..::.TableSectionStyle
System.Web.UI.WebControls..::.TableStyle
System.Web.UI.WebControls..::.TreeNodeStyle
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
.NET Framework
Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
Reference
Other Resources