2013-03-05 1 views
1

Я пытаюсь создать классы сущностей, используя CodeDOm для таблицы с SQL-сервера. У меня есть datagridview одного столбца, чтобы предоставить список пространств имен, которые будут добавлены в класс. Есть ли какой-либо способ, который я могу предоставить каждой ячейке GridView Intellisense, так что типизация имен будет легкой?Как предоставить ячейку данных DataGridView intellisense?

EDIT: Я нашел способ получить метод автозаполнения для gridview благодаря @yeonho. Я использовал этот код, чтобы получить пространство имен из System.dll:

 Assembly assembly = Assembly.Load("System.dll"); 
     Type[] types = assembly.GetTypes(); 

Но, Есть ли способ, что я могу ссылаться System.dll без копирования его в папку отладки или давая полный квалифицированный путь к нему?

+1

поиск с помощью ключевых слов, таких как: "GridView автозаполнения" – Yeonho

ответ

1

Я сделал, как это ..

public List<Type> GetTypesFromAssembly() 
     { 
      List<Type> listOfAllTypes = new List<Type>(); 
      Assembly[] allAssembliesInCurrentDomain = AppDomain.CurrentDomain.GetAssemblies(); 

      foreach (Assembly assembly in allAssembliesInCurrentDomain) 
      { 
       listOfAllTypes.AddRange(assembly.GetTypes()); 
      } 

      return listOfAllTypes;   
     } 

public List<string> GetSystemNamespaces() 
     { 
      List<string> namespaces = new List<string>();    

      List<Type> types = GetTypesFromAssembly(); 

      foreach (Type type in types) 
      { 
       if (type.Namespace != null) 
       { 
        namespaces.Add(type.Namespace.ToString()); 
        namespaces = namespaces.Distinct().ToList(); 
       } 
      } 
      return namespaces; 
     }