我目前正在研究几种自定义ASPX服务器控件。当然,这些控件也会暴露事件。现在有一种可能性是在代码中注册一个处理程序,更具体地说是在自定义服务器控件所在的页面中注册...比如
protected void Page_Load(object sender, EventArgs e)
{
myCustomControl.Click += new ....
}
但是我如何在服务器控制代码s.t中公开事件。我可以直接在ASPX代码(来自Property Editor)上声明这些事件处理程序,就像你在Button的click事件上做的那样?
非常感谢,
树里
答案 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开发人员指南”