В настоящее время я определяю, что форма является MdiChild, объявив ее в самой форме MdiChild с помощью кода:
Private Sub form_Load(sender As Object, e As EventArgs) Handles Me.Load
Me.MdiParent = MainForm 'MainForm is the MdiParent for all
End Sub
Я также использовал:
Public Sub New()
Me.MdiParent = MainForm
InitializeComponent()
End Sub
Кажется, что обаоткрыть форму как MdiChild, но оба метода имеют некоторые проблемы.
При использовании Me.Load мне кажется, что экран немного мерцает (даже с двойной буферизацией).
Когда я использую InitializeComponent (), переход от формы к форме кажется более плавным, ноиногда Form1 вырывается из контейнера MdiParent при возврате в него из Form2 по причинам, которые я пока не вижу.
То, как я вызываю следующую форму, выглядит следующим образом - я скрываю () текущую форму и показываю() новая форма.Когда я закончу во второй форме, я тогда закрою () вторую форму и покажу () первую форму снова.
Me.Hide 'Form1
Form2.Show()
затем вернусь к первой форме
Me.Close 'Form2
Form1.Show
Должен ли я объявить Form2 как MdiChild при вызове его в Form1, как это?
Me.Hide 'Form1
Form2.MdiParent = MainForm
Form2.Show()
После поиска в Интернете, я до сих пор не знаю, как правильно сделать это.Любая помощь приветствуется!