Я пишу приложение Windows Forms в VB.NET. У меня есть три формы: основная форма, которая показывает список учетных записей, форму учетной записи, которая позволяет пользователю просматривать/редактировать информацию для конкретной учетной записи и форму политики, которая позволяет пользователю просматривать/редактировать информацию на конкретной политики для этой учетной записи. Я хочу, чтобы формы отображались так, как если бы они были одним и тем же окном. Пример: когда приложение запускается, пользователь нажимает имя учетной записи в списке в основной форме и нажимает «редактировать». Я хочу, чтобы окно оставалось в том же месте и остается тем же самым точным размером, только содержимое основной формы заменяется содержимым формы учетной записи. То же самое, если пользователь затем выбирает изменить политику из формы учетной записи. Когда пользователь заканчивает работу и нажимает «Сохранить», возвращается основная форма. Через весь этот прецедент, пользователю казалось бы, как будто они просматривали одно и то же окно все время, при этом содержимое этого окна менялось.Создание нескольких форм в VB.NET
Как я могу это сделать? Я пытался что-то вроде:
Dim newForm as New AcctForm
newForm.Location = Me.Location
newForm.Show()
Me.Close()
Проблема в том, что если пользователь перемещает исходное окно, появится новое окно, в котором родительская форма первоначально появилась не там, где она закончилась.
Используйте UserControls вместо форм. –
Невозможно использовать панели для этого? Или, как говорит HighCore, пользовательские элементы управления? –
+1 К элементам управления пользователя. Создайте три UserControls (по одному для каждой из ваших форм). Затем разместите их соответственно (или покажите/скройте их). –