0

我需要像这样投射:

/* Cast Brakets */                    
(Type.FromString(mystring))myObject.doSomething();

我需要获取我在运行时转换的类型,在这种特殊情况下,我不能使用通用的“T”类或方法。

尽管如果您有办法在运行时更改 T-generic Type(无需再次调用类或方法),那也会有所帮助。

这是我的问题的更具体版本:

我有一个列表组合列表,我的 GUI 可以在运行时添加新的组合框,这些将自动放入组合列表中。现在,comboList 中的每个 ComboBox 都有数据库表。我在每个 ComboBox 的 .Tag 字段中添加了每个数据库类的名称

(例如:combobox_users.Tag = "users_databaseClass")

例如,现在在运行时我需要转换为 users_databaseClass 的类型,但在我看来这是不可能的。看来这根本不可能在运行时将类型放入强制转换括号以实际强制转换该类型。

非常感谢您的帮助,我已经尝试了几天。

4

1 回答 1

0

To use the properties and methods of a wacky type, you'll need a reference to that type (e.g. Type.GetType("string_name_of_type")) and you'll need some pretty cool reflection (e.g. theType.GetMethod("method_name")). Your performance won't be great. See http://msdn.microsoft.com/en-us/library/system.type.getmethod(v=vs.71).aspx

于 2012-05-08T00:50:14.877 回答