2010-09-16 38 views
4

我剛剛注意到,如果我使用泛型事件處理程序向我的UserControl添加事件,則在向設計師添加用戶控件時,該事件在設計器中不可見。使用泛型EventHandler <>在Designer中不可見的事件

public event EventHandler<TEventArgs<int>> EventNotVisibleInDesigner; 
public event EventHandler EventVisibleInDesigner; 

不是特別令人擔憂,但是這是通過設計/正常,還是我做錯了什麼?

+0

這可能有助於說明您所使用的演示框架(的WinForms,WPF,ASP.NET等) – luksan 2010-09-16 13:19:19

+0

@luksan,你」正確的,標籤更新。 – Benjol 2010-09-17 05:10:02

回答

7

Windows窗體設計器對通用類型的支持有限。當你避免EventHandler<T>泛型類型參數,將工作沒關係:

public class TEventArgs<T> : EventArgs { } 
    public class MyEventArgs : TEventArgs<int> { } 
    public event EventHandler<MyEventArgs> EventNowAlsoVisibleInDesigner; 
+0

非常狡猾!感謝那。 – Benjol 2010-09-17 05:11:05

相關問題