- - PR -
ASP.NETのイベントが複数回発生してしまいます
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2002-04-10 21:05
はじめまして。
数日前からASP.NETの勉強を始めました(Win2000Server&IIS5)。 従来のWebアプリケーションモデル(DNAやJ2EE)と異なり、イベントドリブン指向が強いのが 面白いと思いましたが、以下のような簡単なサンプルを作成したところ、どうも1回の ボタン押下で2回連続してイベントが発生してしまいます。 ================================================================ <%@ Page Language="C#" Src="Sample.aspx.cs" Inherits="SampleWeb.Sample" %> <html> <head><title></title></head> <body> <form id="Form1" method="post" runat="server"> <asp:Button Id="Button1" OnClick="Button1_Click" Text=" 実 行 " Runat="server" /> <br><br> <asp:Label Id="Label1" Text="" Runat="server" /> <br><br> <asp:Label Id="Label2" Text="" Runat="server" /> </form> </body> </html> ================================================================ using System; using System.Web.UI; using System.Web.UI.WebControls; namespace SampleWeb { public class Sample : Page { protected Button Button1; protected Label Label1; protected Label Label2; private int _cnt; override protected void OnInit( EventArgs e ) { InitializeComponent(); base.OnInit( e ); } private void InitializeComponent() { Button1.Click += new EventHandler( Button1_Click ); } protected void Button1_Click( object sender, EventArgs e ) { _cnt++; Label1.Text += "Button1_Clickが呼ばれました。<br>\\\\n"; Label2.Text = _cnt.ToString() + "回目"; } } } ================================================================ ボタンを1回クリックすると「Button1_Clickが呼ばれました。」が一気に2行追加され、 かつLabel2は常に「2回目」が表示されてしまいます。 イベントが複数回発生してしまうのは仕様なのでしょうか?それとも何か設定が抜けている のでしょうか? | ||||||||
|
投稿日時: 2002-04-10 22:16
ここで1回、
ここでもう1回、あわせて2回イベントハンドラが+=されています。どちらか片方だけにしてください。 | ||||||||
|
投稿日時: 2002-04-10 22:43
あ、よくよく考えればそうだ・・・。
某雑誌のサンプルを見ながら作ったのに。 すみません、どうもありがとうございました。 |
1