0

我如何做下拉列表以包含 C# 中的所有数据类型

System.Int32,System.string

所以我可以从这个下拉列表中选择变量类型

4

4 回答 4

2

如果你只是在寻找原始类型的列表,你可以在这里找到一个:

http://msdn.microsoft.com/en-us/library/hfa3fa08%28v=vs.110%29.aspx

或者,如果你想要一个返回原始类型列表的方法,试试这个:

public List<Type> GetTypes(){
        return typeof(int).Assembly.GetTypes().Where(t => t.IsPrimitive).ToList();
    }

由于它使用 Linq,您将需要:

using System.Linq;

于 2012-04-22T02:31:55.780 回答
2

最后,

Enum.GetNames(typeof(System.TypeCode))

这就是我所说的

于 2012-04-23T06:57:02.727 回答
1

您可以使用此处List<Type>概述的 a 。将此列表用作您的.ComboBox

如果您需要自动获取所有类型,请参阅答案

于 2012-04-22T02:37:06.530 回答
0

如果您想遍历程序集并获取所有类型的名称。

private List<string> GetTypes()
{
    List<string> typeNames = new List<string>();

    /// or AppDomain.CurrentDomain.GetAssemblies() or loop through the folder with assemblies
    Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
    foreach (AssemblyName an in assembly.GetReferencedAssemblies() )
    {
        foreach (Type type in an.GetTypes())
        {
            typeNames.add(type.Name);
        }  
    }
    return typeNames;
}

如果您只想列出基本类型,请转到 C# 规范并编辑组合框。

于 2012-04-22T02:44:40.460 回答