2010-01-14 73 views
0

我已經創建了一個自定義事件併爲其分配了一個處理程序。爲什麼自定義事件處理程序在asp.net中提升兩次?

這引起了事件稱爲一個時間,但處理程序獲取調用

兩次,爲什麼如此行?

請幫忙?

+1

你能發表一些代碼嗎? – taylonr 2010-01-14 05:36:49

+0

什麼事件?你可以添加兩次被觸發的事件嗎? – 2010-01-14 13:28:31

+0

RaiseEvent DateSelected(Me,argSchedulerEventAgrs)引發事件 和 AddHandler Scheduler.DateSelected,AddressOf Date_Selected添加處理程序 – 2010-01-15 05:21:46

回答

0

如果事件連接了兩次,那麼當您引發事件時,事件處理程序將被調用兩次。例如,

public void MyEventHandler(object sender, EventArgs e) { 
} 

... 

someObject.SomeEvent += MyEventHandler; 
someObject.SomeEvent += MyEventHandler; 

... 

someObject.RaiseSomeEvent(); 

這將導致MyEventHandler被調用兩次。你有多確定該活動只附加一次?

0

您可能想要考慮一些其他操作可能觸發您處理的事件,例如將數據綁定到組合框時,它會自動引發OnSelectionChange事件。

因此,您可以使用OnLoad將數據綁定到組合的方案,以便引發事件,並將OnInit分配給引發該事件的組合的默認值。

沒有你的一些代碼,這隻能幫你意識到這個問題可能發生在很多方面。

所以讓我們看看代碼! :)

+0

RaiseEvent DateSelected(Me,argSchedulerEventAgrs)引發事件和AddHandler Scheduler.DateSelected,AddressOf Date_Selected添加處理程序 – 2010-01-15 05:22:18

+0

您是否認真期望任何人提供基於該代碼示例的答案? – tzup 2010-01-15 06:17:31

相關問題