如何:存取物件的成員 (Visual Basic)
當您有參考物件的物件變數時,您通常會想要使用該物件的成員,例如其方法、屬性、欄位和事件。 例如,建立新的 Form 物件之後,您可能會想要設定其 Text 屬性或呼叫其 Focus 方法。
存取成員
您可以透過參考物件的變數來存取物件的成員。
若要存取物件的成員
在物件變數名稱與成員名稱之間使用成員存取運算子 (
.
)。currentText = newForm.Text
如果成員為共用,則不需要變數來存取它。
存取已知型別物件的成員
如果您在編譯時間知道物件的型別,則可以針對參考物件的變數使用早期繫結。
若要存取您在編譯時間知道型別的物件成員
將物件變數宣告為您想要指派給變數的物件型別。
Dim extraForm As System.Windows.Forms.Form
使用
Option Strict On
時,您只能將 Form 物件 (或衍生自 Form 之型別的物件) 指派給extraForm
。 如果您已將具有放大CType
轉換的類別或結構定義為 Form,您也可以將該類別或結構指派給extraForm
。在物件變數名稱與成員名稱之間使用成員存取運算子 (
.
)。extraForm.Show()
不論
Option Strict
設定為何,您都可以存取 Form 類別專屬的所有方法和屬性。
存取已知型別物件的成員
如果您在編譯時間不知道物件的型別,則必須針對任何參考物件的變數使用晚期繫結。
若要存取您在編譯時間尚未知道型別的物件成員
將物件變數宣告為物件資料類型。 (將變數宣告為
Object
與將變數宣告為 System.Object 相同)。Dim someControl As Object
使用
Option Strict On
時,您只能存取 Object 類別上定義的成員。在物件變數名稱與成員名稱之間使用成員存取運算子 (
.
)。someControl.GetType()
若要能夠存取您指派給物件變數的任何物件成員,您必須設定
Option Strict Off
。 當您這樣做時,編譯器無法保證指定的成員是由您指派給變數的物件所公開。 如果物件未公開您嘗試存取的成員,就會發生 MemberAccessException 例外狀況。