EventArgs
次のように定義されたジェネリッククラスがあります。
public class GenericEventArgs<T> : EventArgs
{
public GenericEventArgs(T value)
{
Data = value;
}
public T Data { get; private set; }
}
event
of 型EventHandler<T>
を myに追加すると、ジェネリック型UserControl
をサブクラス化した場合にのみ Designer に表示されます。EventArgs
// this event will not appear in Designer
public event EventHandler<GenericEventArgs<String>> Event1;
// this event appears in Designer as expected
public event EventHandler<StringEventArgs> Event2;
は次のようにStringEventArgs
定義されます。
public class StringEventArgs : GenericEventArgs<String>
{
public StringEventArgs(String value)
: base(value)
{
}
}
[Browsable(true)]
イベントに属性を追加して、EventArgs<T>
クラスSerializable
を成功としてマークしようとしました。
これを引き起こしている可能性はありますか? また、(サブクラス化以外の) 回避策はありますか?
VS2010 と .NET 4.0 を使用しています。