2009-07-06 24 views
1

我已經在Windows窗體中開發了一個應用程序,但現在我被告知要將其放在tabbedpage中。我面對的問題是如何在選項卡式控件中插入窗體。如果這是不可能,那麼我可以做什麼。我需要在頁面(或表單)之間導航,並且數據在導航時保持持久性。關於Tabcontrol和窗體

有什麼方法可以在選項卡控件中插入表單? 即使有可能表單不應該看起來像一個形式,而應該像一個頁面。 請幫我

在此先感謝 斯里蘭卡。

回答

0
form1.TopLevel = false; 
form1.FormBorderStyle = FormBorderStyle.None;//this is not compulsary 
this.tabPage1.Controls.Add(form1); 
form1.Show(); 
1

嘗試使用第一個應用程序的所有邏輯和表單創建一個UserControl,並通過將它放在第二個應用程序的主窗體上來使用它。

使UserControl不應該那麼難,你可以複製粘貼控制從你的舊應用程序。

不知道這是否有任何幫助,但我希望它有。

0

好吧,我上面的人是正確的,但有一個小小的澄清。您正在將控件添加到一個TabControl,而不是一個TabControl。他寫得對,但我把它解釋錯了。不要試圖在設計器代碼中添加它,任何更改都會破壞訂單並且不起作用。只需將其添加到Form.Load事件。

Friend WithEvents panelForm1 As panelForm 

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
     Try 
      ' 
      'panelForm1 
      ' 
      Me.panelForm1 = New ValidZoneExtracurricularTasks.SyncForm 
      Me.panelForm1.ClientSize = New System.Drawing.Size(673, 228) 
      Me.panelForm1.Dock = System.Windows.Forms.DockStyle.Fill 
      Me.panelForm1.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None 
      Me.panelForm1.Location = New System.Drawing.Point(3, 3) 
      Me.panelForm1.Name = "panelForm1" 
      Me.panelForm1.Text = "panelForm1" 
      Me.panelForm1.Visible = False 
      Me.panelForm1.Dock = DockStyle.Fill 
      Me.panelForm1.TopLevel = False 

      Me.tpgSync.Controls.Add(Me.SyncForm1) 
      Me.SyncForm1.Show() 
     Catch ex As Exception 

     End Try 
    End Sub 

這應該對你有所幫助,userControls如果你打算試試看,因爲它們不易使用。