Я всегда получаю исключение, когда пытаюсь переключаться между различными формами в моей программе.Может быть, вы поможете мне решить эту проблему.Вот сообщение об исключении:
Control.Invoke должен использоваться для взаимодействия с элементами управления, созданными в отдельном потоке
Я прикрепил формы к очень хорошим переменным, и этопроблема возникает, когда я пытаюсь использовать команду типа MyForm.Show ().
Это не происходит, когда формы не привязаны к переменным, но тогда у меня возникают колоссальные проблемы с обновлением текстовых полей и прочего.
Надеюсь скоро вас услышать!
edit;
У меня 4 разные формы.Когда я загружаю основной модуль и основную форму, в Sub (...) Handles MyBase.Load я выполняю следующий код:
В модуле:
Public StartupForm As frmStartup
Public RegularForm As frmRegularUse
Public LoginForm As frmLogin
Public PasswordForm As frmPassword
Public SettingsForm As frmSettings
В основной форме:
RegularForm = Me
StartupForm = frmStartup
LoginForm = frmLogin
PasswordForm = frmPassword
SettingsForm = frmSettings
Это тот подход, который я разработал, чтобы получить полный контроль над обновлением форм.Это программа для Motorola Scanner с Windows CE.Теперь, например, когда я ввожу правильный пароль в LoginForm, я хочу переключиться на RegularForm.Когда я пытаюсь использовать RegularForm.Show () или RegularForm.ShowDialog или RegularForm.BringToFront (), я получаю исключение.Когда я пытаюсь вызвать форму с помощью frmRegularUse.Show (), я могу вызвать форму, но я думаю, она создается в другом потоке, поэтому я теряю контроль над ней (когда пытаюсь что-то положить с клавиатуры,ответа нет).