Прочитать на английском

Поделиться через


Style.BackColor Свойство

Определение

Получает или задает цвет фона серверного веб-элемента управления.

[System.ComponentModel.Bindable(true)]
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.WebColorConverter))]
public System.Drawing.Color BackColor { get; set; }
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.WebColorConverter))]
public System.Drawing.Color BackColor { get; set; }

Значение свойства

Объект Color, представляющий цвет фона элемента управления. Значение по умолчанию — "Empty", указывающее, что это свойство не задано.

Атрибуты

Примеры

В этом примере показано, как использовать Style объект для одновременного изменения свойств стиля нескольких элементов управления. При каждом изменении одного из значений Style свойств каждый элемент управления должен вызывать свой ApplyStyle метод. Обратите внимание, что не все включенные элементы управления поддерживают все продемонстрированные свойства. Если элемент управления не поддерживает определенное свойство, внешний вид элемента управления не изменится при изменении значения свойства.

Примечание

В следующем примере кода используется однофайловая модель кода, и при копировании непосредственно в файл кода программной части может работать неправильно. Этот пример кода необходимо скопировать в пустой текстовый файл с расширением .aspx. Дополнительные сведения о модели кода веб-форм см. в разделе модель кода веб-форм ASP.NET.

<!--  -->
<%@ 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();
            //<Snippet4>              

            // 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();
            //</Snippet4>           

            // 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);
        }
    }
    //<Snippet5>
    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);
    }
    //</Snippet5>

    //<Snippet6>
    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);
    }
    //</Snippet6>

    //<Snippet7>
    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);
    }
    //</Snippet7>

    //<Snippet8>
    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);
    }
    //</Snippet8>

    //<Snippet9>
    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);
    }
    //</Snippet9>

    //<Snippet10>
    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);
    }
    //</Snippet10>

    //<Snippet11>
    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);
    }
    //</Snippet11>
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<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>

Комментарии

Используйте свойство , BackColor чтобы указать цвет фона серверного веб-элемента управления. Это свойство задается с помощью System.Drawing.Color объекта .

Примечание

Это свойство будет отображаться только для некоторых элементов управления. Например, Table, Panel, DataGrid, Calendarи ValidationSummary будет отображать это свойство. Он также будет работать для CheckBoxListи , DataListRadioButtonList если их RepeatLayout свойство равно RepeatLayout.Table, а не RepeatLayout.Flow.

Как правило, только элементы управления, которые отображаются в виде тега <table> , могут отображать цвет фона в HTML 3.2, тогда как почти любой элемент управления может использовать html 4.0.

Для элементов управления, которые отображаются в виде тега <span> (включая Label, все элементы управления проверкой и элементы управления списком со свойством RepeatLayout , для которых задано значение RepeatLayout.Flow), это свойство будет работать в Microsoft Internet Explorer версии 5 или более поздней, но не для Microsoft Internet Explorer версии 4.

Применяется к

Продукт Версии
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

См. также раздел