Impossibile inizializzare la proprietà '<propertyname>' in un'espressione dell'inizializzatore di oggetti perché richiede argomenti

I membri inizializzati in un elenco di inizializzatori di oggetto devono essere campi o proprietà e i membri della proprietà non possono avere parametri. Ad esempio, le proprietà predefinite richiedono argomenti, quindi non possono essere inizializzate in un elenco di inizializzatori di oggetto. Per ulteriori informazioni, vedere .

ID errore: BC30992

Per correggere l'errore

  • Rimuovere dall'elenco di inizializzazione tutte le proprietà che hanno argomenti.

Esempio

La classe seguente contiene una proprietà predefinita, defaultProp, che richiede un argomento integer.

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  

Dal momento che la proprietà predefinita richiede un argomento, la seguente dichiarazione genera un errore.

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

Vedi anche