Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Функции получения всех классов в namespace 
V
    Опции темы
cha0ss
Дата 2.10.2009, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 8.9.2009

Репутация: нет
Всего: нет



Здравствуйте, возникла следующая проблема:

В клиентской программе находится несколько статических форм (в namespace = 'MyProject.StaticForms'). Клиенту от сервера приходит строка какую форму необходимо открыть (например "StaticForm1")

Можно ли на C# получить объект данного класса, имея только название класса, т.е имея всего лишь строку "StaticForm1", открыть форму MyProject.StaticForms.StaticForm1.
Может как-то можно в заданном namespace получить список всех классов?
PM MAIL   Вверх
Bogdan1024
Дата 2.10.2009, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1436
Регистрация: 28.9.2005
Где: Киев

Репутация: 5
Всего: 13



Берёшь сборку, в которой содержится нужный тебе класс, и создаёшь его объект.
Например:
Код

using System;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            string ZloName = typeof(Zlo).FullName;
            System.Reflection.Assembly a = System.Reflection.Assembly.GetEntryAssembly();
            object o = a.CreateInstance(ZloName);
            System.Console.WriteLine(o.ToString());
            System.Console.ReadKey();
        }
    }

    public class Zlo
    {
        public override string ToString()
        {
            return "zlooo!!!";
        }
    }
}



--------------------
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0602 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.