如何实现WEB自定义组件的OnLoad事件?

waki 2003-05-19 08:45:12
自定义组件从Component继承,而不是从Control中继承,发现从组件继承过来的,大多事件都没有实现,我现想实现OnLoad事件,类似于Controls,该怎么办?
...全文
121 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhg_best2000 2003-05-23
  • 打赏
  • 举报
回复
我又一个想法但是没有实验过:

在组件里实现OnPageLoad事件处理:
public event void OnPageLoad(EventArgs e)
{
....
}

在组件构造函数里:
public XXCom(Container)
{
...
Page pg = container as Page;
if (pg != null) pg.Load += new EventHandler(this.OnPageLoad);
...
}

试试看,有效果就给我报个喜。
waki 2003-05-22
  • 打赏
  • 举报
回复
各位帮我测试一下我新做的控件,下载地址:
http://www.aspxcontrol.com/download/WebMessageBox.zip
OK521 2003-05-22
  • 打赏
  • 举报
回复
学习
waki 2003-05-22
  • 打赏
  • 举报
回复
多谢指导,我对自定义事件写法不太熟悉,参照MSDN写总不对。
webdiyer 2003-05-21
  • 打赏
  • 举报
回复
上面的方法确实可以调用Page对象!但Component本身没有Load事件,你如果想给它加上一个Load事件,就需要写一个组件类从Component继承,在你的这个组件类中加入你的自定义事件Load,然后再让你现在的这个组件从上面那个自定义组件继承,否则你无法给Component直接加个Load事件,事件是组件内部固有的对象,你无法添加也无法去除!

--------------------------------
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com
waki 2003-05-21
  • 打赏
  • 举报
回复
Component是没有Page对象,但它可以调用它的容器所在的Page对象,如在组件的一个方法中写Page p = (Page)System.Web.HttpContext.Current.Handler;完全可以使用p来得到Request等内容,但问题是,如果是写到构造函数中,就会出错,我想是由于构造组件的时候,外层的Page对象还根本没有生成,所以不能调用到。如果是单独写在方法中,怎样可以使用JS在提交时可以自动调用呢?
XueYan 2003-05-21
  • 打赏
  • 举报
回复
我以前也发现过这个问题,可我到现在还没有解决,说真的,真是很讨厌Component竟然没有Load事件,我一直想用继承的方法来实现,可没有成功!
webdiyer 2003-05-21
  • 打赏
  • 举报
回复
Component根本没有什么Page对象,请看看.net文档中的帮助!

--------------------------------
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com
waki 2003-05-21
  • 打赏
  • 举报
回复
构造函数与Initialize一样,都发生得太早了。
zjjzcgao 2003-05-20
  • 打赏
  • 举报
回复
可以重构它的create方法。
waki 2003-05-20
  • 打赏
  • 举报
回复
组件的Initialize方法发生得太早了,以至于想调用Page对象时会出错,怎样在页面被装载时得到Request[]内容?
webdiyer 2003-05-19
  • 打赏
  • 举报
回复
只有Control有Load事件,Component没有Load事件!

--------------------------------
AspNetPager 免费分页控件4.1版发布,欢迎下载使用:http://www.webdiyer.com


waki 2003-05-19
  • 打赏
  • 举报
回复
Component本身是没有Load事件,但是否能自已实现?我想,Control也只不过是自己实现了而已呀。把事件加到Page对象中,当页面装载时就调用组件的装载事件,应该是可以的吧?但我不知如何实现它。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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