'MustOverride' não pode ser especificado em '<procedurename>' porque está em um tipo parcial declarado como 'NotInheritable' em outra definição parcial
Um procedimento ou uma propriedade é declarada como MustOverride
dentro de uma classe definida em várias declarações parciais, mas uma das definições parciais especifica NotInheritable
para a classe.
Quando você divide a definição de uma classe entre várias declarações parciais, o compilador trata a classe como a união de todas as declarações parciais. Isso se aplica não apenas aos membros, mas também à implementação, à herança e ao nível do acesso.
Para substituir um procedimento ou uma propriedade, uma classe precisa herdá-la de uma classe base. Portanto, para especificar MustOverride
para um procedimento ou uma propriedade em uma classe base, você precisa especificar MustInherit
para a classe. Como eles são mutuamente contraditórios, você não pode especificar MustInherit
e NotInheritable
para a mesma classe.
ID do erro: BC30927
Se a propriedade ou o procedimento precisar ser substituído, remova a palavra-chave
NotInheritable
da declaração parcial na qual ela aparece.Se a classe precisar ser
NotInheritable
, remova a palavra-chaveMustOverride
do procedimento ou da propriedade. Não é possível substituí-la porque não é possível herdar a classe.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: