VB.NET: свойство с открытым геттером и защищенным сеттером

В VB.NET существует ли способ определить различную область для получателя и средство настройки свойства?

Что-то вроде (этот код не работает, конечно):

Public Class MyClass
    Private mMyVar As String
    Public ReadOnly Property MyVar As String
        Get
            Return mMyVar
        End Get
    End Property
    Protected WriteOnly Property MyVar As String
        Set(value As String)
            mMyVar = value
        End Set
    End Property
End Class

Я знаю, что я мог бы просто выполнить это с помощью метода, который принимает значения свойств в качестве параметра и устанавливает частную переменную. Но мне просто интересно, есть ли более элегантный способ, который ближе к понятию свойств.

Ответ 1

Конечно, синтаксис выглядит следующим образом:

Public Property MyVar As String
    Get
        Return mMyVar
    End Get
    Protected Set(value As String)
        mMyVar = value
    End Set
End Property