Поделиться через


Практическое руководство. Доступ к членам объекта (Visual Basic)

Если у вас есть переменная объекта, которая относится к объекту, часто требуется работать с элементами этого объекта, такими как его методы, свойства, поля и события. Например, после создания нового Form объекта может потребоваться задать его Text свойство или вызвать его Focus метод.

Доступ к членам

Доступ к элементам объекта можно получить через переменную, которая ссылается на нее.

Для получения доступа к членам объекта

  • Используйте оператор доступа к члену (.) между именем переменной объекта и именем члена.

    currentText = newForm.Text
    

    Если элемент является общим, для доступа к нему не требуется переменная.

Доступ к членам объекта известного типа

Если вы знаете тип объекта во время компиляции, можно использовать раннюю привязку для переменной, которая ссылается на нее.

Чтобы получить доступ к членам объекта, тип которого известен во время компиляции

  1. Объявите переменную объекта того же типа, что и объект, который вы намереваетесь назначить этой переменной.

    Dim extraForm As System.Windows.Forms.Form
    

    С помощью Option Strict On можно назначить только Form объекты (или объекты типа, производные от Form) в extraForm. Если вы определили класс или структуру с расширяющим преобразованием в CType, вы также можете назначить класс или структуру Form.

  2. Используйте оператор доступа к члену (.) между именем переменной объекта и именем члена.

    extraForm.Show()
    

    Доступ ко всем методам и свойствам, характерным для Form класса, независимо от того, какой Option Strict параметр имеет значение.

Доступ к элементам объекта неизвестного типа

Если вы не знаете тип объекта во время компиляции, необходимо использовать позднюю привязку для любой переменной, которая ссылается на нее.

Доступ к членам объекта, тип которого неизвестен во время компиляции

  1. Объявите переменную объекта типа данных Object. (Объявление переменной как Object то же самое, что объявление ее как System.Object.)

    Dim someControl As Object
    

    С помощью Option Strict Onэтого класса можно получить доступ только к элементам, определенным в Object классе.

  2. Используйте оператор доступа к члену (.) между именем переменной объекта и именем члена.

    someControl.GetType()
    

    Чтобы получить доступ к членам любого объекта, назначаемого переменной объекта, необходимо задать Option Strict Off. При этом компилятор не может гарантировать, что данный элемент предоставляется объектом, назначенным переменной. Если объект не предоставляет элемент, к которому вы пытаетесь получить доступ, возникает MemberAccessException исключение.

См. также