如何:存取物件的成員 (Visual Basic)

當您有參考物件的物件變數時,您通常會想要使用該物件的成員,例如其方法、屬性、欄位和事件。 例如,建立新的 Form 物件之後,您可能會想要設定其 Text 屬性或呼叫其 Focus 方法。

存取成員

您可以透過參考物件的變數來存取物件的成員。

若要存取物件的成員

  • 在物件變數名稱與成員名稱之間使用成員存取運算子 (.)。

    currentText = newForm.Text
    

    如果成員為共用,則不需要變數來存取它。

存取已知型別物件的成員

如果您在編譯時間知道物件的型別,則可以針對參考物件的變數使用早期繫結

若要存取您在編譯時間知道型別的物件成員

  1. 將物件變數宣告為您想要指派給變數的物件型別。

    Dim extraForm As System.Windows.Forms.Form
    

    使用 Option Strict On 時,您只能將 Form 物件 (或衍生自 Form 之型別的物件) 指派給 extraForm。 如果您已將具有放大 CType 轉換的類別或結構定義為 Form,您也可以將該類別或結構指派給 extraForm

  2. 在物件變數名稱與成員名稱之間使用成員存取運算子 (.)。

    extraForm.Show()
    

    不論 Option Strict 設定為何,您都可以存取 Form 類別專屬的所有方法和屬性。

存取已知型別物件的成員

如果您在編譯時間不知道物件的型別,則必須針對任何參考物件的變數使用晚期繫結

若要存取您在編譯時間尚未知道型別的物件成員

  1. 將物件變數宣告為物件資料類型。 (將變數宣告為 Object 與將變數宣告為 System.Object 相同)。

    Dim someControl As Object
    

    使用 Option Strict On 時,您只能存取 Object 類別上定義的成員。

  2. 在物件變數名稱與成員名稱之間使用成員存取運算子 (.)。

    someControl.GetType()
    

    若要能夠存取您指派給物件變數的任何物件成員,您必須設定 Option Strict Off。 當您這樣做時,編譯器無法保證指定的成員是由您指派給變數的物件所公開。 如果物件未公開您嘗試存取的成員,就會發生 MemberAccessException 例外狀況。

另請參閱