能不能阻止事件的冒泡

redwrite 2008-04-28 05:11:58
C#2005+WinForm

基类B有一个事件e1
继承类P也有一个事件e1
e1事件触发时按照事件的冒泡原则
先执行B的e1,然后接着执行P的e1

我有两个问题不知道能不能实现
1 能不能在B的e1中阻止事件冒泡,就是说,在B的e1中可以根据需求不让P的e1再执行了
代码类似如下
类B
e1()
{
'.....
if(条件成熟)
{
阻止事件冒泡
}
'.....
}


2 在B的e1中显示调用P的e1,代码类似如下
类B
e1()
{
'.....
if(条件成熟)
{
显示调用事件冒泡,代码转到P的e1中去
}
'.....
}

大家有没有过类似的需求,望指点,谢谢。
...全文
317 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yilanwuyu123 2008-04-29
  • 打赏
  • 举报
回复
友情UP 持续关注。
yagebu1983 2008-04-29
  • 打赏
  • 举报
回复
应该可以的!!
关注中!!
redwrite 2008-04-29
  • 打赏
  • 举报
回复
我想阻止应该是有办法的吧
r_swordsman 2008-04-29
  • 打赏
  • 举报
回复
当然可以...你是改gridview的吧?
redwrite 2008-04-29
  • 打赏
  • 举报
回复
up
showjancn 2008-04-28
  • 打赏
  • 举报
回复
“能不能在B的e1中阻止事件冒泡,就是说,在B的e1中可以根据需求不让P的e1再执行了 ”
一个不有问题的设计!!

既然B是基类,就不可能可以预知P(派生类),更不应该对P的事件进行阻止。

如果楼主真的想让在B满足条件时,P可以忽略事件。
建议在B中做个标记,P根据这个标记来对事件做出相应的处理。
tianyajinhui 2008-04-28
  • 打赏
  • 举报
回复
你的说法本身就有矛盾啊!
“e1事件触发时按照事件的冒泡原则 先执行B的e1,然后接着执行P的e1 ”
我不知道你这个e1事件触发,是哪个e1事件触发的。我觉的如果你想冒泡的话,你这个设计方案我觉的不好。
最后在子类里面设置一个事件,当触发这个事件的时候,你来控制子类的e1事件和父类的事件触发,这样应该好了,
^_^。讨论讨论。
zhu_gx 2008-04-28
  • 打赏
  • 举报
回复
关注一下
zhu_gx 2008-04-28
  • 打赏
  • 举报
回复
先顶一个
goldxinx 2008-04-28
  • 打赏
  • 举报
回复
时间
WanTianwen 2008-04-28
  • 打赏
  • 举报
回复
事件冒泡,没试过,关注先。

WanTianwen 2008-04-28
  • 打赏
  • 举报
回复
时间冒泡,没试过,关注先。

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧