asp.net如何改变asp:panel的颜色

时间:2015-03-11 15:39:10

标签: c# asp.net panel

我试图在我的网络应用程序中更改panel的(背面)颜色,以表示模态更改。我正在使用带有VS Express 2013 for Web的asp.net WebForm项目。我有一个包含多个页面的Web应用程序,其中一个页面包含一组三个嵌套面板:

<asp:Panel ID="ManageTemplatesPanel" runat="server" style="border-radius:3px" BorderStyle="Solid" BackColor="White" Height="1415px" Width="930px" ScrollBars="None" BorderWidth="1px">
<asp:Panel ID="BigInsetGrayPanel" runat="server" style="border-radius:3px" BackColor="Silver" BorderStyle="Solid" BorderWidth="1px" Height="1275px" Width="910px" >
<asp:Panel ID="SelectClientsWhiteInsetPanel" runat="server" style="margin-left:20px;margin-right:20px;border-radius:3px" BackColor="White" Height="465px" BorderStyle="None">

每个面板内部都有许多控件 - 文本框,网格视图,按钮等。 然后是面板的一组结束标签。

我有一个CheckBoxList控件,里面有三个复选框:

<asp:CheckBoxList ID="IncludeCheckBoxList" runat="server" BackColor="White" BorderStyle="None" CssClass="cssIncludeCheckBoxList" Font-Names="Arial" Font-Size="Small" ForeColor="Black" RepeatDirection="Horizontal" RepeatLayout="Flow" Height="28px" AutoPostBack="True" OnSelectedIndexChanged="IncludeCheckBoxList_SelectedIndexChanged">
    <asp:ListItem Selected="True">Sent Client List</asp:ListItem>
    <asp:ListItem Selected="True">Notification Time</asp:ListItem>
    <asp:ListItem Selected="True">Message</asp:ListItem>
</asp:CheckBoxList>

这嵌套在&#34; ManageTemplatesPanel&#34;中。我创建了一个名为SelectedIndexChanged的{​​{1}}事件处理程序。这是代码:

IncludeCheckBoxList_SelectedIndexChanged

以下是protected void IncludeCheckBoxList_SelectedIndexChanged(object sender, EventArgs e) { ListItemCollection items = IncludeCheckBoxList.Items; foreach (ListItem item in items) { string section = item.Value; bool itemChecked = item.Selected; if (0 == String.Compare(section, "Sent Client List", true)) UpdateSentClientSection(itemChecked); else if (0 == String.Compare(section, "Notification Time", true)) UpdateNotificationTimeSection(itemChecked); else if (0 == String.Compare(section, "Message", true)) UpdateMessageSection(itemChecked); } } 的代码:

UpdateSentClientSection

我已经搜索过,并且有几个博客建议以这种方式更改面板的背景颜色 - 但我无法让它发挥作用。有什么想法吗?

提前致谢...

1 个答案:

答案 0 :(得分:0)

由于您尝试在服务器端的事件期间修改元素,因此您必须使用ajax面板并在方法UpdateSentClientSection中调用ajaxpanel.update()。

请参阅:https://msdn.microsoft.com/en-us/library/bb399001%28v=vs.140%29.aspx