[英]VB.NET Reference the user form in which the sender control is located
我想知道如何引用發件人控件所在的用戶表單? 我有一個以編程方式創建的按鈕控件和它所在的用戶窗體,當單擊它時,我需要引用用戶窗體以從該窗體的 combobox 中獲取一個值以將其用作變量,我可以按降序進行,即獲取發件人的子控件但是如何獲得發件人之上的控件?
Sub DynamicForm_NewForm_SmartHUB_ProjectsActivated(ByVal sender As Object, ByVal e As EventArgs)
strProjectTypeFolderName = '(form in which the sender is located).combobox_ProjectType.selecteditem
End Sub
您首先需要至少將sender
轉換為Control
。 然后您可以訪問Parent
屬性,盡管該屬性是Control
類型並且可能不是表單,如果sender
在Panel
、 GroupBox
或其他一些容器中。 您應該改為調用FindForm
方法。 它將返回一個Form
引用,並且無論sender
嵌套多深,它也將獲得包含表單。
如果你有Option Strict On
,你可能沒有,但你絕對應該,即使是Form
參考也不夠。 Form
class 沒有combobox_ProjectType
字段,因此您需要將其轉換為實際類型 - Form1
或其他類型 - 以便在不使用后期綁定的情況下訪問該字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.