ASP.NETで何かを書くのはこれが初めてです:)
ボタンとパネルを含むいくつかのコントロールを作成しました。ボタンを押すと、いくつかのアクション(デリゲート)が呼び出されます==>このアクションは、いくつかのWebサービスを呼び出し(タスクを使用した非同期呼び出し)、Webサービスから応答を取得すると、Webサービスの応答に従ってコールバックメソッドを呼び出しますiパネルの背面の色を変更します。
しかし、コールバックのブレークポイント (コントロールの色の変化) で停止しても、パネルの背面の色が変化していることはわかりません。
ブラウザから変更しようとしましたが、変更に成功し、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();
}
}