是否有可能将通用类型T传递给一个winform的实例,所以T在整个表单中都可用?C#泛型和Winform
8
A
回答
10
是的,表单就像任何其他类一样。您必须稍微修改设计器生成的代码,并注意不会回滚。
// TestForm.cs
public partial class TestForm<T> : Form
// TestForm.Designer.cs
partial class TestForm<T>
4
至于建议,可以做到这一点 - 但在很多情况下,你会发现自己的战斗框架等IMO它可能是简单的,只是传递一个Type
到形式(如财产,也许),和实例通过object
属性(或接口/基类,如果适用)。
你可以使用泛型,但在很多情况下,在这种情况下,它实际上不会帮助你很多,而设计师讨厌它。
+2
Marc,VS2010设计师似乎对通用表单没有任何问题。虽然它完全失败了Form-inheritance。 – 2010-04-09 16:50:10
相关问题
- 1. C++模板和C#泛型
- 2. C++泛型类和继承
- 3. C#泛型和反射
- 4. C#泛型和约束
- 5. C#泛型和集合
- 6. C#4.0泛型和ASP.net MVC
- 7. C#泛型和接口
- 8. 继承和泛型C#
- 9. C#泛型类和EqualityComparer
- 10. java泛型和c + +模板
- 11. C#泛型和集合
- 12. C#接口和泛型
- 13. c#Linq to SQL和泛型
- 14. C#7:元组和泛型
- 15. 用泛型更新一个特定的属性(Winform C#)
- 16. C#泛型类型
- 17. C#泛型和推理类型
- 18. C#类型推断,泛型和接口
- 19. 多态,泛型和匿名类型C#
- 20. C#泛型和类型检查
- 21. C#泛型
- 22. C#泛型
- 23. C#泛型
- 24. C#泛型
- 25. 将C#泛型转换为Java泛型
- 26. C#泛型类与泛型方法
- 27. c#泛型与非泛型调用者
- 28. 转换Java泛型到C#泛型
- 29. C#泛型和接口和简单OO
- 30. 铸造泛型和泛型类型
请注意,通用表单不能在表单设计器中显示,尽管它们的dscendants可以。 – wRAR 2010-04-09 15:27:11
@wrar,我正在用VS2010进行测试,并且我的TestForm没有(明显的)问题。但我期望它有点虚弱。 – 2010-04-09 15:29:35
我正在测试它,并会告诉你它是如何工作的。 – Nathan 2010-04-09 15:41:20