Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Область видимости переменных в классе Добавлено: 14.02.05 15:24  

Автор вопроса:  Barulya
Подскажите пожалуйста, каким образом мне объявить переменные в родительской структуре, так чтобы они были видны из дочерних, и не видны извне структуры, для того, чтобы при инициализации дочерних структур, они использовали локальные переменные (напрямую), а не свойства родительской структуры, например:

   Protected Structure A
        Private intID As Integer
        Private strName As String
        Public Property Name() As String
            Get
                Return strName
            End Get
            Set(ByVal Value As String)
                strName = Value
            End Set
        End Property
        Public Property ID() As Integer
            Get
                Return intID
            End Get
            Set(ByVal Value As Integer)
                intID = Value
            End Set
        End Property
        Public Sub New(ByVal iID As Integer, ByVal sName As String)
            intID = iID
            strName = sName
        End Sub
        Public Structure B
            Private b_intID As Integer
            Private b_strName As String
            Private b_intNo As Integer
            Public ReadOnly Property Name() As String
                Get
                    Return b_strName
                End Get
            End Property
            Public ReadOnly Property ID() As Integer
                Get
                    Return b_intID
                End Get
            End Property
            Public ReadOnly Property NO() As Integer
                Get
                    Return b_intNo
                End Get
            End Property
            Public Sub New(ByVal iNO As Integer)
                b_intNo = iNO
                b_intID = intID
                b_strName = strName
            End Sub
        End Structure
    End Structure



В данном случае при попытке присвоить значения:

               b_intID = intID
                b_strName = strName

Возникает ошибка:

Reference to a non-shared member requires an object reference.
Пытался зашарить intID и strName, но при создании еще одного экземпляра данной структуры (при заполнении, например, ComboBox'а), свойства второй ссылались на локальные переменные первой.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #1 Добавлено: 14.02.05 23:39
Если я правильно понял проблему то попробуй обявлять переменные в родительском класе с атрибутом Protected, а не Private как ты это делал...

Ответить

Номер ответа: 2
Автор ответа:
 Barulya



Вопросов: 29
Ответов: 55
 Профиль | | #2 Добавлено: 15.02.05 19:46
Пробовал, не помогает- все равно получается, что закрытые члены родительской структуры не зашаренные и из дочерних структур они не видны...

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам