这是我第一次在ASP.NET中写一些东西:)
我写了一些包含按钮和面板的Control。 当按下按钮时 - 一些动作(委托)是呼叫==>这个 Action调用一些Web服务(使用Task进行异步调用)和 当我从网络服务得到响应时,我打电话给 根据Web服务回答的回调方法 我改变了面板的背面颜色。
但即使我停在回调的断点(控件的颜色变化) - 我也看不到面板背面的颜色是变化的。
我尝试从浏览器中更改它 - 我成功地改变了它 我还可以从ASP设计页面更改颜色。
我没有任何线索为什么面板颜色没有变化。 我怎么解决呢?
控制代码==>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TrafficLights.ascx.cs" Inherits="Control1" %>
<asp:Label ID="Label1" runat="server" Width="131px" Height="40px"
CssClass="Site.css" style="margin: 10px" Font-Underline="True" />
<asp:Panel Height="10" runat="server" />
<asp:Panel ID="Panel1" runat="server" Height="80px" Width="180px" HorizontalAlign="Center"/>
<asp:Button ID=ActionButton CssClass="Site.css" runat="server"
BackColor="Azure" Width="120px" Heigh="40px" Text="Action" style="margin-left: 30px; height: 26px;" onclick="ActionButton_Click" />
public enum Color_
{
Red,
Yellow,
Green
};
public Color_ Color_A
{
set
{
switch( value )
{
case Color_.Red:
{
Panel1.BackColor = Color.Red;
}
break;
case Color_.Yellow:
{
Panel1.BackColor = Color.Yellow;
}
break;
case Color_.Green:
{
Panel1.BackColor = Color.Green;
}
break;
}
}
}
protected void ActionButton_Click( object sender, EventArgs e )
{
if( actionOnButtonClickEvent != null )
{
actionOnButtonClickEvent.Invoke();
}
}