Windows Forms Generic Inheritance

Ich habe diese Klassen:

class Foo<T1, T2> : Form 
    where T1, T2 : EventArgs

class MiddleGoo : Foo<X,Y>

class Goo : MiddleGoo

X, Y sind nur einfache Klassen, die von EventArgs abgeleitet sind.

Ich sehe Goo in Designer, aber ich möchte eine Klasse Boo zwischen Foo und Goo wie folgt erstellen:

class Boo<T1, Y> : Foo<T1, Y>
where T1 : EventArgs

class MiddleGoo : Boo<X,Y>

class Goo : MiddleGoo

Workaround mit Mittelklasse funktioniert nicht, irgendwelche Ideen?

EDIT: Ich meinte, Y und X sind Klassen wie YEventArgs und XEventArgs, und mein Problem besteht darin, in der Designerklasse Boo zu sehen, wie ich Y als T2 definiert habe, es aber trotzdem über T1 generisch halten möchte.

EDIT2: Mir ist gerade aufgefallen, dass ich etwas über die Klasse Y falsch geschrieben habe ...

public class Foo<T1, T2> : Form
    where T1 : EventArgs
    where T2 : EventArgs
{
}

public class Boo<T1> : Foo<T1, MyEventArgs2>
    where T1 : EventArgs
{
}

public class MiddleGoo : Boo<MyEventArgs1>
{
}

class Goo : MiddleGoo
{
}

public class MyEventArgs2 : EventArgs
{
}

public class MyEventArgs1 : EventArgs
{      
}

Und um klar zu sein, ich kann Boo in Designer einfach nicht sehen ... (Ich kann MiddleGoo auch nicht sehen, aber ich muss nicht)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage