Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Nie można zainicjować właściwości "<propertyname>" w wyrażeniu inicjatora obiektu, ponieważ wymaga argumentów

Elementy członkowskie zainicjowane na liście inicjatora obiektów muszą być polami lub właściwościami, a elementy członkowskie właściwości nie mogą mieć parametrów. Na przykład właściwości domyślne wymagają argumentów, więc nie można zainicjować ich na liście inicjatora obiektów. Aby uzyskać więcej informacji, zobacz .

Identyfikator błędu: BC30992

Aby poprawić ten błąd

  • Usuń z listy inicjowania wszystkie właściwości, które mają argumenty.

Przykład

Poniższa klasa zawiera właściwość domyślną , defaultPropktóra wymaga argumentu całkowitego.

Public Class SomeStrings  
    Private myStrings() As String  
    Sub New(ByVal size As Integer)  
        ReDim myStrings(size)  
    End Sub  
    Default Property defaultProp(ByVal index As Integer) As String  
        Get  
            Return myStrings(index)  
        End Get  
        Set(ByVal Value As String)  
            myStrings(index) = Value  
        End Set  
    End Property  
End Class  

Ponieważ właściwość domyślna wymaga argumentu, następująca deklaracja powoduje błąd.

' Dim strs As New SomeStrings(2) With { .defaultProp = "One" }  

Zobacz też