Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Składowe zainicjowane na liście inicjatora obiektów muszą być polami lub właściwościami. Ponadto właściwości na liście inicjatorów nie mogą mieć parametrów. Właściwość powodująca ten błąd jest przeciążona, a każda z jego wersji wymaga argumentów. W związku z tym nie można zainicjować właściwości na liście inicjatora obiektów.
Identyfikator błędu: BC30993
Aby poprawić ten błąd
- Usuń właściwość, która wymaga argumentów z listy inicjatorów.
Przykład
Następująca klasa zawiera trzy definicje właściwości: jedną dla TotalItems i dwie dla Itemklasy , która jest przeciążona.
Class CollectionOfItems
Property TotalItems() As Integer
Get
End Get
Set(ByVal value As Integer)
End Set
End Property
Property Item(ByVal Key As String) As Object
Get
End Get
Set(ByVal value As Object)
End Set
End Property
Property Item(ByVal Index As Integer) As Object
Get
End Get
Set(ByVal value As Object)
End Set
End Property
End Class
Właściwość TotalItems nie wymaga żadnych argumentów i może zostać zainicjowana na liście inicjowania obiektów, jak pokazano w poniższej deklaracji.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
Właściwość Item jest przeciążona, a każde przeciążenie wymaga argumentu. Item W związku z tym nie można wyświetlić się na liście inicjatora obiektów.
' The following declaration is not valid.
' Dim coinCollection As New CollectionOfItems With { .TotalItems = 0, _
' .Item = aCoinObject }
Aby uniknąć tego błędu, zainicjuj Item właściwość poza inicjatorem obiektu.
Dim coinCollection As New CollectionOfItems With { .TotalItems = 0 }
coinCollection.Item(1) = aCoinObject