2010-01-14 46 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

相关问题