1

EventArgs次のように定義されたジェネリッククラスがあります。

public class GenericEventArgs<T> : EventArgs
{
    public GenericEventArgs(T value)
    {
        Data = value;
    }

    public T Data { get; private set; }
}

eventof 型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 を使用しています。

4

0 に答える 0