Método CodeElement2.RenameSymbol
Altera o nome declarado de um objeto e atualiza todas as referências de código para o objeto dentro do 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: System.String
Obrigatório.O nome do símbolo para renomear.
Comentários
Se qualquer parte a renomeação não pode ser concluída (dentro do escopo do projeto atual), o método retorna um erro.
Observação |
---|
Você não pode chamar RenameSymbol ou ElementID com ligação tardia.(Por exemplo, DTE.ActiveDocument.ProjectItem.FileCodeModel.CodeElements.Item("Class1").RenameSymbol("Class2").) Você deve converter explicitamente o objeto do CodeElement2 interface antes de fazer a chamada. Elementos de código EnvDTE80 (doravante denominada código * 2 objetos) derivar na EnvDTE.(Por exemplo, CodeClass2 deriva de CodeClass, e CodeElement2 deriva de CodeElement.) Internamente em Visual Studio, por sua vez, todos os elementos de código (em ambos os conjuntos de módulos) são convertidos em CodeElement2.Então, logicamente, isso é como se CodeClass2, por exemplo, em última análise deriva de CodeElement2. Como os dois elementos são na realidade em duas hierarquias de herança separados, no entanto, o latebinder não é possível consultar CodeElement2 métodos no código * 2 objetos.EnvDTEfunciona praticamente da mesma maneira, mas o uso de macros pre-processor permite que as interfaces sejam definidas de modo que herdadas métodos é definidas explicitamente em todas as interfaces relacionadas para o qual conversões existem. EnvDTE80 interfaces são definidas usando um esquema de herança semelhante, somente sem o uso de instruções de pre-processor.Isso é uma solução mais elegante, já que elimina propriedades redundantes, mas o resultado é que as propriedades não podem ser chamadas com ligação tardia.Para contornar esse problema, explicitamente converter o objeto do CodeElement2 interface antes de fazer a chamada. Além disso, os valores de elementos de modelo de código, como classes, estruturas, funções, atributos, delegados e assim por diante podem ser não-determinísticos depois de fazer determinados tipos de edições, o que significa que seus valores não confie sempre permanecer o mesmo.Para obter mais informações, consulte a seção valores de elemento de modelo de código podem ser alterada de Descobrindo o 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áveis.
Consulte também
Referência
Outros recursos
Como: compilar e executar os exemplos de código de modelo de objeto de automação
Descobrindo o código usando o modelo de código (Visual Basic)