我需要在类构造函数中添加事件(鼠标点击)的建议。
我从Flickr获得了一系列图像,可以更改,我想向他们添加点击事件。
我真的遇到了问题,所以我制作了一个类图像,并在构造函数中添加了这个事件,所以每次点击它时我都不需要搜索我在页面上点击的控件。
以下是构造函数的示例:
public FlickerImages(string url, string title, string desc, System.Web.UI.Page page,ImageButton image)
{
this.url = url;
this.title = title;
this.descreption = desc;
this.image = image;
image.Click += this.onImageClick; //--> the event
//image is a ImageButton object
this.page = page;
}
我想知道这是一个好习惯,还是应该总是在对象类之外添加事件?
(对不起我的英文)
答案 0 :(得分:2)
您还应该有一个-=
,也许您可以使用.Dispose()
方法将您的课程设为IDisposable并取消参与该事件。
答案 1 :(得分:1)
也许这可以帮助你...这是一种不同的方法,但可以提供帮助
http://blog.majcica.com/2011/12/01/a-simple-asp-net-flickr-application-part-2/
答案 2 :(得分:1)
你可能想看看这个类似的问题:
Is it poor form for a C# class to subscribe to its own published events?
但除此之外,为什么要在图像类中存储对页面的引用?您还应确保在每次回发时重新创建这些对象。
我建议改用UserControls并添加适当的属性和事件。