如果我有一个泛型类:
public class MyClass<T>
{
public T Value;
}
Run Code Online (Sandbox Code Playgroud)
我想实例化几个项目,如...
new MyClass<string>
new MyClass<int>
Run Code Online (Sandbox Code Playgroud)
...并将它们添加到集合中.如何定义集合以便它可以包含泛型类型列表?然后我想在某个时刻迭代集合,并使用Value属性.可能?
我有一个对象(窗体),其中包含一个集合(.Fields),我想包含一个泛型类(FormField)的实例.
简单地说,FormField定义如下:
public class FormField<T>
{
private Form Form;
public T Value { get; set; }
public string Name { get; set; }
public void Process()
{
// do something
}
public FormField(Form form, string name, T value)
{
this.Name = name;
this.Value = value;
this.Form = form;
}
}
Run Code Online (Sandbox Code Playgroud)
这允许我有FormField,FormField等,这部分很有用.我想要的是一个"Formfields"的集合,无论其类型如何,但我被迫定义一个类型(似乎),例如:
public class Form
{
string Code { get; set; }
string Title { get; set; }
int Year { get; set; }
Guid ClientID { get; set; }
ICollection<FormField<int>> …Run Code Online (Sandbox Code Playgroud)