2010-03-24 76 views
0

我有一個應用程序可以根據用戶的請求打開一些其他表單,並且它們被設置爲不顯示在任務欄中。問題是,如果其中一個輔助窗口被其他應用程序隱藏,則切換到主窗口只會將該窗體帶到最前方。.NET分組形式,以便拉起主窗體顯示所有其他形式?

有沒有一種很好的方式來對錶格進行「分組」,以便給予他們任何一個焦點將整個團隊帶到前面?我嘗試在主窗體的Activated事件中的每個窗體上調用BringToFront(),但這也給了次窗體焦點,使其無法與主窗體進行交互。

回答

1

您必須將主窗體設置爲其他窗體的所有者。 使用此代碼片段測試:

Private Sub addNextForm(ByVal sender As Object, ByVal e As EventArgs) 
     Dim newForm As New Form() 
     newForm.StartPosition = FormStartPosition.CenterParent 
     newForm.Text = "Form " & Me.OwnedForms.Length + 1 
     newForm.ShowInTaskbar = False 
     newForm.Owner = Me 
     Dim btn As New Button() 
     btn.Text = "Open Form" 
     AddHandler btn.Click, AddressOf Me.addNextForm 
     newForm.Controls.Add(btn) 
     newForm.Show() 
End Sub