|
Модераторы: gambit, Partizan |
|
IEZ |
|
||||
Опытный Профиль Группа: Участник Сообщений: 295 Регистрация: 10.2.2005 Где: Санкт-Петербург Репутация: 1 Всего: 3 |
Приветствую Всех.
У меня есть для строковых переменных:
typedata может принимать различные значения, к примеру
Вопрос: Возможно ли на основе typedata создать динамически переменную соответствующего типа для последующей проверки data на соответствие типу (на подобии Decimal.Parse(data)). Спасибо. -------------------- "Нужно делать так, как нужно, а как не нужно, делать не нужно" (с) Винни-Пух. |
||||
|
|||||
tol05 |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 11 Всего: 170 |
try
{ object obj = Activator.CreateInstance (Type.GetType(typedata)); } catch(Exception ex) { ... } список исключений - смотри по методам Activator.CreateInstance() и Type.GetType() Потом с помощью obj.GetType() узнаешь реальный тип переменной -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
1stain |
|
|||
Опытный Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 4 Всего: 40 |
-------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) |
|||
|
||||
IEZ |
|
|||
Опытный Профиль Группа: Участник Сообщений: 295 Регистрация: 10.2.2005 Где: Санкт-Петербург Репутация: 1 Всего: 3 |
1stain, Спасибо.
-------------------- "Нужно делать так, как нужно, а как не нужно, делать не нужно" (с) Винни-Пух. |
|||
|
||||
1stain |
|
||||
Опытный Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 4 Всего: 40 |
только что поставил VS2008 - под впечатлением от увиденного, решился добавить к выше написанному коду код на C# 3.0
Смысл кода - расширяем класс System.String дженерик методом для проверки строки на валидность типу
Это сообщение отредактировал(а) 1stain - 18.10.2007, 19:20 -------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) |
||||
|
|||||
IEZ |
|
|||
Опытный Профиль Группа: Участник Сообщений: 295 Регистрация: 10.2.2005 Где: Санкт-Петербург Репутация: 1 Всего: 3 |
-------------------- "Нужно делать так, как нужно, а как не нужно, делать не нужно" (с) Винни-Пух. |
|||
|
||||
1stain |
|
|||
Опытный Профиль Группа: Участник Сообщений: 486 Регистрация: 30.7.2007 Где: Киев - Харьков Репутация: 4 Всего: 40 |
-------------------- Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein) |
|||
|
||||
CityAC |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 161 Регистрация: 3.11.2006 Где: Украина Горловка Репутация: нет Всего: 1 |
В продолжение темы.
А если нужно создать контролл на основе названия класса Например
Как с помощью className создать ComboBox? Это сообщение отредактировал(а) CityAC - 30.10.2007, 23:23 --------------------
Вижу цель, не вижу припятствий. |
|||
|
||||
arial |
|
|||
Опытный Профиль Группа: Участник Клуба Сообщений: 772 Регистрация: 11.3.2003 Где: Архангельская обл . Репутация: нет Всего: 7 |
-------------------- Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская) |
|||
|
||||
CityAC |
|
||||
Бывалый Профиль Группа: Участник Сообщений: 161 Регистрация: 3.11.2006 Где: Украина Горловка Репутация: нет Всего: 1 |
Ну и где я возьму Type. Мне Type нужно получить из строки с названием типа а
возвращает null НЕ МОГУ ПОНЯТЬ ПОЧЕМУ? В таблице хранится информация о контролле, который нужно создать: Тип контролла, его локэйшн и проч. Так вот я не могу создать тип сз текстовой строки (напр. "System.Windows.Forms.ComboBox"). Еще раз повторюсь
не возвращает тип, а возвращает null Ну че за фигня. Наприемер Type.GetType("System.String") возвращает тип нормально, а тип контролла возваращать не хочет Это сообщение отредактировал(а) CityAC - 31.10.2007, 10:04 --------------------
Вижу цель, не вижу припятствий. |
||||
|
|||||
CityAC |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 161 Регистрация: 3.11.2006 Где: Украина Горловка Репутация: нет Всего: 1 |
Опечатка в последнем куске кода и не редактируется
Верно так
Это сообщение отредактировал(а) CityAC - 31.10.2007, 10:30 --------------------
Вижу цель, не вижу припятствий. |
|||
|
||||
CityAC |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 161 Регистрация: 3.11.2006 Где: Украина Горловка Репутация: нет Всего: 1 |
Разобрался, если кому надо вот ссылка http://www.sql.ru/forum/actualthread.aspx?tid=223833
--------------------
Вижу цель, не вижу припятствий. |
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |