Ich habe ToolStripMenu von wo ich Formulare öffne. Formulare werden in TabControl geöffnet, das sich in einem der Bereiche des geteilten Containers befindet. Ich habe auch einen Button im Split-Container platziert. Er schließt alle ausgewählten TabPages (wo Formulare geöffnet sind). Problem ist, dass, wenn ich Formular in neuem TabPage öffne und es durch diesen Knopf schließe, Formular nicht mehr öffnet. WARUM ? .... Hier ist mein Code:VB.NET - Formular in TabControl nicht nach dem Schließen geöffnet
Private Sub SearchItemsAPOToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SearchItemsToolStripMenuItem.Click
'Define new page in Tab control and form to open in It
Dim PageNew As New TabPage()
Dim FrmItem As New Search_Items
'Define where and how form should open
FrmItem.TopLevel = False
FrmItem.Dock = DockStyle.Fill
FrmItem.FormBorderStyle = FormBorderStyle.None
'If form allready opened in TabPage, only send focus to It
If Application.OpenForms().OfType(Of Search_Items).Any Then
For Each page As TabPage In TabControl1.TabPages
If page.Text = "Search Items" Then
TabControl1.SelectedTab = page
End If
Next page
'If form not allready opened, we open It in Tab control and send focus on that TabPage
Else
PageNew.Controls.Add(FrmItem)
PageNew.Text = "Search Items"
TabControl1.Visible = True
TabControl1.TabPages.Add(PageNew)
FrmItem.Show()
BtnTab.Visible = True
TabControl1.SelectedTab = PageNew
End If
End Sub
Private Sub BtnTab_Click(sender As Object, e As EventArgs) Handles BtnTab.Click
'Button is visible when TabPages are opened, and with click It closes selected TabPage
Me.TabControl1.TabPages.Remove(Me.TabControl1.SelectedTab)
'IF no TabPages, button hides again
If TabControl1.TabPages.Count = 0 Then
TabControl1.Visible = False
BtnTab.Visible = False
End If
End Sub
Warum entfernen Sie die ausgewählte Registerkarte und verstecken sie nicht einfach? –
@Alex B. Sie können Registerkarten nicht ausblenden – SSS
Was genau ist Search_Items? Ein 'UserControl' vielleicht? –