Как вызвать формы из переменной
От: GunDoorAs  
Дата: 06.05.04 09:04
Оценка:
Процедура получает имя формы. Как вызвать эту форму
Re: Как вызвать формы из переменной
От: Yuri Россия http://spbdetails.ru
Дата: 06.05.04 09:23
Оценка:
Здравствуйте, GunDoorAs, Вы писали:

GDA>Процедура получает имя формы.

Имя ?! может ссылку на объект формы

GDA>Как вызвать эту форму


поподробнее плиз
Take it easy.
Re: Как вызвать формы из переменной
От: GarryIV  
Дата: 06.05.04 09:28
Оценка:
Здравствуйте, GunDoorAs, Вы писали:

GDA>Процедура получает имя формы. Как вызвать эту форму


Если под именем формы имеется ввиду ее тип (строка или System.Type) то копай в сторону System.Activator.CreateInstance
... << RSDN@Home 1.1.3 stable >>
WBR, Igor Evgrafov
Re[2]: Как вызвать формы из переменной
От: GunDoorAs  
Дата: 06.05.04 09:33
Оценка:
Здравствуйте, Yuri, Вы писали:

Y>Здравствуйте, GunDoorAs, Вы писали:


GDA>>Процедура получает имя формы.

Y>Имя ?! может ссылку на объект формы

GDA>>Как вызвать эту форму


Y>поподробнее плиз


------------------
Есть форма Form1

Процедура
public void proc1(string form)
........

Процедура получает стринг "Form1"
Как в этой процедуре поднять форму Form1
Re[3]: Как вызвать формы из переменной
От: Yuri Россия http://spbdetails.ru
Дата: 06.05.04 10:14
Оценка:
Здравствуйте, GunDoorAs, Вы писали:

GDA>Здравствуйте, Yuri, Вы писали:


Y>>Здравствуйте, GunDoorAs, Вы писали:


GDA>>>Процедура получает имя формы.

Y>>Имя ?! может ссылку на объект формы

GDA>>>Как вызвать эту форму


Y>>поподробнее плиз


GDA>------------------

GDA>Есть форма Form1

GDA>Процедура

GDA>public void proc1(string form)
GDA>........

GDA>Процедура получает стринг "Form1"

GDA>Как в этой процедуре поднять форму Form1

"поднять" это как?? создать или получить доступ к уже сущшествующией

если создать, то надо создавать ее экземпляр — см. пост выше
Take it easy.
Re[4]: Как вызвать формы из переменной
От: GunDoorAs  
Дата: 06.05.04 10:32
Оценка:
Здравствуйте, Yuri, Вы писали:

Y>Здравствуйте, GunDoorAs, Вы писали:


GDA>>Здравствуйте, Yuri, Вы писали:


Y>>>Здравствуйте, GunDoorAs, Вы писали:


GDA>>>>Процедура получает имя формы.

Y>>>Имя ?! может ссылку на объект формы

GDA>>>>Как вызвать эту форму


Y>>>поподробнее плиз


GDA>>------------------

GDA>>Есть форма Form1

GDA>>Процедура

GDA>>public void proc1(string form)
GDA>>........

GDA>>Процедура получает стринг "Form1"

GDA>>Как в этой процедуре поднять форму Form1

Y>"поднять" это как?? создать или получить доступ к уже сущшествующией


Y>если создать, то надо создавать ее экземпляр — см. пост выше



Есть формы Form1, Form2, Form3 ..... FormN
Есть процедура, которая получает имя формы в виде стринга, например "Form666", необходимо в этой процедуре создать экземпляр этой формы.
Как динамически создавать экземпляры форм по их именам
Re: Как вызвать формы из переменной
От: Peter Fleischer Германия www.informtoools.de
Дата: 06.05.04 11:13
Оценка:
Здравствуйте, GunDoorAs, Вы писали:

GDA>Процедура получает имя формы. Как вызвать эту форму


Если правильно понял, то можно так:


    Dim FormName As String = TextBox1.Text
    Dim asm As [Assembly] = [Assembly].GetExecutingAssembly()
    Dim ty As Type = asm.GetType(asm.GetName.Name & "." & FormName)
    Dim o As Object = System.Activator.CreateInstance(ty)
    Dim mi As System.Reflection.MethodInfo = ty.GetMethod("Show")
    mi.Invoke(o, Nothing)



Peter
Re[2]: Как вызвать формы из переменной
От: GunDoorAs  
Дата: 06.05.04 13:05
Оценка:
Здравствуйте, Peter Fleischer, Вы писали:

PF>Здравствуйте, GunDoorAs, Вы писали:


GDA>>Процедура получает имя формы. Как вызвать эту форму


PF>Если правильно понял, то можно так:



PF>
PF>    Dim FormName As String = TextBox1.Text
PF>    Dim asm As [Assembly] = [Assembly].GetExecutingAssembly()
PF>    Dim ty As Type = asm.GetType(asm.GetName.Name & "." & FormName)
PF>    Dim o As Object = System.Activator.CreateInstance(ty)
PF>    Dim mi As System.Reflection.MethodInfo = ty.GetMethod("Show")
PF>    mi.Invoke(o, Nothing)
PF>



PF>Peter



Очень даже БАЛЬШОЕ спасибо, работает
Re[2]: Как вызвать формы из переменной
От: oRover Украина  
Дата: 06.05.04 15:06
Оценка:
Здравствуйте, Peter Fleischer, Вы писали:

PF>
PF>    Dim FormName As String = TextBox1.Text
PF>    Dim asm As [Assembly] = [Assembly].GetExecutingAssembly()
PF>    Dim ty As Type = asm.GetType(asm.GetName.Name & "." & FormName)
PF>    Dim o As Object = System.Activator.CreateInstance(ty)
PF>    Dim mi As System.Reflection.MethodInfo = ty.GetMethod("Show")
PF>    mi.Invoke(o, Nothing)
PF>


оффтоп
а зачем в [] брать слово Assembly?
... << RSDN@Home 1.1.3 stable >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.