2010-03-22 89 views
0

我想知道是否可以通過Vb.NET中的代碼創建WebBrowser,而不是將webbrowser拖動到表單中。簡單地說,我會非常感謝你的幫助。從代碼創建控件 - VB.NET

回答

0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    Dim browser As New WebBrowser 
    Controls.Add(browser) 
End Sub 

在一般情況下,如果你想知道如何從代碼做了什麼設計器,然後創建您希望使用設計的,那麼看在.designer.vb(或了.Designer.cs )文件。

0

要添加John Saunders提到的內容,我通常通過設計人員在測試表單中創建控件,根據需要設置控件的屬性。然後在實際的表單中,我創建一個Initialize方法,該方法在窗體構造函數中的InitializeComponent之後立即被調用。

這使得其他人可以輕鬆識別出我手動創建控件並輕鬆找到更改的代碼(因爲沒有設計者)。

  1. 創建測試表單。 (從設計器代碼中提取所需代碼後可刪除)
  2. 將控件/組件添加到測試表單中。
  3. 根據需要設置屬性。
  4. 打開設計器代碼和複製控件的代碼。
  5. 在實際的表單中,創建初始化方法。
  6. 將代碼粘貼到此方法中。
  7. 如果需要,爲實際表單創建構造函數。
  8. 調用intialize方法。

的WinForms示例:

Public Sub New() 
    ' This call is required by the Windows Form Designer. 
    InitializeComponent() 
    ' Add any initialization after the InitializeComponent() call. 
    InitializeTagViewer() 
    InitializeRssPane() 
    InitializeAuditPane() 
    InitializeViewMenuItems() 
#If DEBUG Then 
    InitializeDevelopmentMenu() 
#End If 
End Sub 

Private Sub InitializeAuditPane() 
    Me.__auditPane = New AuditPane 
    Me.__lowerRightSplitContainer.Panel2.Controls.Add(Me.__auditPane) 
    ' 
    '__auditPane 
    ' 
    Me.__auditPane.Dock = System.Windows.Forms.DockStyle.Fill 
    Me.__auditPane.Font = New System.Drawing.Font("Verdana", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) 
    Me.__auditPane.Location = New System.Drawing.Point(0, 0) 
    Me.__auditPane.Name = "__auditPane" 
    Me.__auditPane.Size = New System.Drawing.Size(150, 198) 
    Me.__auditPane.TabIndex = 0 
End Sub