自定义服务器控件:在ASPX代码上以声明方式指定事件

时间:2009-04-20 14:45:16

标签: asp.net custom-server-controls

我目前正在研究几种自定义ASPX服务器控件。当然,这些控件也会暴露事件。现在有一种可能性是在代码中注册一个处理程序,更具体地说是在自定义服务器控件所在的页面中注册...比如

protected void Page_Load(object sender, EventArgs e)
{
   myCustomControl.Click += new ....
}

但是我如何在服务器控制代码s.t中公开事件。我可以直接在ASPX代码(来自Property Editor)上声明这些事件处理程序,就像你在Button的click事件上做的那样?

非常感谢,

树里

3 个答案:

答案 0 :(得分:4)

你这样做......

如果您的ASCX控件上有一个名为PropertyChanged的公共事件

然后它将在你的Control on OnPropertyChanged

上明确地提供
<ctl:MyControl ID="abc" runat="server" OnPropertyChanged="abc_PropertyChanged" />

答案 1 :(得分:0)

你有没有试过让它们成为公共活动?

答案 2 :(得分:0)

这篇MSDN文章很好地解释了如何做到这一点,不幸的是它比看起来应该更复杂。

[1]:http://msdn.microsoft.com/en-us/library/aa719907(VS.71).aspx/“。NET Framework开发人员指南”