Método CodeElement2.RenameSymbol
Altera o nome declarado de um objeto e atualiza todas as referências de código ao objeto no escopo do projeto atual.
Namespace: EnvDTE80
Assembly: EnvDTE80 (em EnvDTE80.dll)
Sintaxe
'Declaração
Sub RenameSymbol ( _
NewName As String _
)
void RenameSymbol(
string NewName
)
void RenameSymbol(
String^ NewName
)
abstract RenameSymbol :
NewName:string -> unit
function RenameSymbol(
NewName : String
)
Parâmetros
NewName
Tipo: StringNecessário. O nome de símbolo a ser renomeado.
Comentários
Se qualquer parte renomear não pode ser concluída (dentro do escopo atual do projeto), o método retornará um erro.
Dica
Você não pode chamar RenameSymbol ou o latebound de ElementID . (Por exemplo, DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElements.Item("Class1").RenameSymbol("Class2").) É necessário converter explicitamente o objeto para a interface de CodeElement2 antes de fazer a chamada.
Os elementos de código em EnvDTE80 (chamado assim por diante objetos Code*2) derivam-se dessas propriedades em EnvDTE. (Por exemplo, se CodeClass2 deriva de CodeClass, e CodeElement2 é derivado de CodeElement.) Internamente em Visual Studio, todos os elementos de código (em ambos os assemblies) por sua vez são convertidos em CodeElement2.Assim, logicamente, é como se CodeClass2, por exemplo, se finalmente deriva de CodeElement2.
Como os dois elementos estão na realidade em duas hierarquias separadas de herança, entretanto, o latebinder não pode verificar métodos de CodeElement2 nos objetos Code*2.o trabalho deEnvDTE essencialmente da mesma maneira, mas o uso de macros do processador permitem que as interfaces está definido de modo que os métodos herdados são definidos explicitamente em todas as interfaces relacionadas para que as conversões existentes.as interfaces deEnvDTE80 são definidas usando um esquema semelhante de herança, somente sem o uso de instruções do processador.Essa é uma solução mais elegante desde que elimina propriedades redundantes, mas o resultado é que essas propriedades não podem ser chamadas latebound.Para resolver esse problema, convertido explicitamente o objeto para a interface de CodeElement2 antes de fazer a chamada.
Além disso, os valores de código de modelagem elementos como classes, estruturas, funções, atributos, representantes, e assim por diante podem ser não determinísticas depois de fazer determinados tipos as edições do, o que significa que seus valores não podem ser confiáveis em para permanecer sempre os mesmos.Para obter mais informações, veja que os valores do elemento do modelo de código da seção podem ser alteradas em Descobrindo código usando o modelo de código (Visual Basic).
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiável.
Consulte também
Referência
Outros recursos
Como compilar e executar os exemplos de código do modelo de objeto Automation
Descobrindo código usando o modelo de código (Visual Basic)