У меня есть три класса, CarAdd, Car и EntityObject.CarAdd вызывает методы в EntityObject, но не имеет немедленного доступа к ним.Вместо этого он создает объект типа Car и использует его для вызова методов.Проблема в том, что EntityObject не может быть создан, поэтому есть ли у класса Car способ вызывать методы EntityObject без объекта?
Я пытался включить функциональность «shared» в заголовок метода, но так какфункция реализует что-то, я не могу сделать это успешно.
'This executes when a button is pressed on the UI. _mCar is an object of type 'Car
'In class CarAdd
Public Sub BeginEdit()
If _mCar IsNot Nothing Then _mCar.BeginEdit()
End Sub
'This is the code I added to try and make this work. Since EO is nothing, 'though, the if statement never executes.
'In class Car
Private EO As EntityObject
Public Sub BeginEdit()
If EO IsNot Nothing Then
Call EO.BeginEdit()
End If
End Sub
'This is the method that I want to execute
'In class EntityObject
Public Sub BeginEdit() Implements System.ComponentModel.IEditableObject.BeginEdit
If Not _blnIsEditing Then
_blnIsEditing = True
_OriginalObject = TryCast(Me.MemberwiseClone(), EntityObject)
End If
End Sub
Я надеялся, что вызов метода, по сути, будет проходить через класс Car и класс EntityObject, но это не то, чтопроисходит.Вместо этого оператор if в классе Car никогда не выполняется, поэтому метод никогда не вызывается.