我试图在我的网络应用程序中更改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
我已经搜索过,并且有几个博客建议以这种方式更改面板的背景颜色 - 但我无法让它发挥作用。有什么想法吗?
提前致谢...
答案 0 :(得分:0)
由于您尝试在服务器端的事件期间修改元素,因此您必须使用ajax面板并在方法UpdateSentClientSection中调用ajaxpanel.update()。
请参阅:https://msdn.microsoft.com/en-us/library/bb399001%28v=vs.140%29.aspx