방법: 개체의 멤버에 액세스(Visual Basic)
개체를 참조하는 개체 변수가 있을 때 해당 개체의 메서드, 속성, 필드 및 이벤트 같은 개체 멤버를 사용해야 하는 경우가 종종 있습니다. 예를 들어, 새 Form 개체를 만든 후 이 개체의 Text 속성을 설정하거나 Focus 메서드를 호출해야 하는 경우가 있습니다.
멤버에 액세스
개체를 참조하는 변수를 통해 개체 멤버에 액세스할 수 있습니다.
개체의 멤버에 액세스하려면
개체 변수 이름과 멤버 이름 사이에 멤버 액세스 연산자(.)를 사용합니다.
currentText = newForm.Text
멤버가 Shared(Visual Basic) 멤버이면 변수 없이도 개체에 액세스할 수 있습니다.
알려진 형식의 개체 멤버에 액세스
컴파일 타임에 개체 형식을 알면 개체를 참조하는 변수에 대해 초기 바인딩을 사용할 수 있습니다.
컴파일 타임에 알려진 형식의 개체 멤버에 액세스하려면
개체 변수를 변수에 할당하려는 개체의 형식으로 선언합니다.
Dim extraForm As System.Windows.Forms.Form
Option Strict On을 사용하면 Form 개체 또는 Form에서 파생된 형식의 개체만 extraForm에 할당할 수 있습니다. Form으로 CType 확대 변환을 수행하여 클래스 또는 구조체를 정의한 경우 해당 클래스 또는 구조체를 extraForm에 할당할 수도 있습니다.
개체 변수 이름과 멤버 이름 사이에 멤버 액세스 연산자(.)를 사용합니다.
extraForm.Show()
Option Strict 설정에 관계없이 Form 클래스와 관련된 모든 메서드 및 속성에 액세스할 수 있습니다.
알려지지 않은 형식의 개체 멤버에 액세스
컴파일 타임에 개체 형식을 모르면 개체를 참조하는 모든 변수에 대해 런타임에 바인딩을 사용해야 합니다.
컴파일 타임에 알려지지 않은 형식의 개체 멤버에 액세스하려면
개체 변수를 Object 데이터 형식으로 선언합니다. 변수를 Object로 선언하는 것은 변수를 System.Object로 선언하는 것과 같습니다.
Dim someControl As Object
Option Strict On을 사용하면 Object 클래스에 정의된 멤버에만 액세스할 수 있습니다.
개체 변수 이름과 멤버 이름 사이에 멤버 액세스 연산자(.)를 사용합니다.
someControl.GetType()
개체 변수에 할당하는 모든 개체의 멤버에 액세스할 수 있도록 하려면 Option Strict Off를 설정해야 합니다. 이 경우 컴파일러에서 해당 멤버는 변수에 할당된 개체를 사용하지 않고도 노출될 수 있습니다. 액세스하려는 멤버를 개체에서 노출하지 않으면 MemberAccessException 예외가 발생합니다.