Динамически открывать динамическую форму, winforms - PullRequest
0 голосов
/ 09 сентября 2011

Мой основной класс имеет следующую функцию:

sub openform(formnum as integer)

dim obj as Form

select case formnum
case 0
obj=new form0
case 1
obj=new form1
case 2
obj=new form2
case 3
obj=new form3
end select

obj.showdialog()

end sub

, поэтому параметр 'formnum' будет исходить из аргументов командной строки.

В будущем у меня может быть 1000 форм,поэтому мне нужно написать 1000 случаев, чтобы открыть требуемую форму.

Вместо этого есть ли альтернативный способ открыть форму ??

что-то вроде:

dim obj as form=application.findforms("form" & formnum)
obj.showdialog()

1 Ответ

1 голос
/ 09 сентября 2011

Может это сработает?

Dim f As Form = DirectCast(Activator.CreateInstance(Me.GetType().Assembly.FullName, "[namespace].form" & formnum), Form)
f.ShowDialog()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...