Sie können verwenden Sie generische Formen, die in C#?
Sollten Sie in der Lage sein zu erstellen, die generische form:
public partial class MyGenericForm<T> :
Form where T : class
{
/* form code */
public List<T> TypedList { get; set; }
}
Gültig ist C# kompiliert. Aber der designer wird nicht funktionieren, und die form wirft eine Laufzeit-exception, wenn Sie irgendwelche Bilder, die besagt, dass es nicht finden können die Ressource.
Ich denke, das ist, weil die windows forms-designer wird davon ausgegangen, dass die Ressourcen gespeichert werden, unter dem einfachen Typ name.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, Sie können! Hier ein blog-Beitrag habe ich vor einer Weile mit dem trick:
Entwerfen Generische Formen
Edit: Sieht aus wie Sie bereits sind, es zu tun auf diese Weise. Diese Methode funktioniert gut, also ich würde es nicht als zu hacky.
Ich habe einen hack zu umgehen, die funktioniert, aber ist nicht ideal:
Fügen Sie eine neue Klasse zum Projekt, das übernimmt die form mit seinen einfachen Namen.
Dies bedeutet, dass obwohl der designer ist immer noch falsch das erwartet einfacher Typ ist (ich.e ohne
<>
) ist noch zu finden.Können Sie tun dies in drei Schritten.
1) Ersetzen Sie in Form1.cs-Datei
2) Ersetzen Sie in Form1.Designer.cs
3) neue Datei : Form1.Generisches.cs (für die Eröffnung design)
*.Designer.cs
ist automatisch generierten durch VS und erhalten kann jeder Zeit überschrieben