Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Gerencia várias ações de edição que são tratadas como uma única operação, otimizada para um modo de exibição de texto.
Esta API não compatível com CLS. A alternativa compatível com CLS é [None].
Hierarquia de herança
System.Object
Microsoft.VisualStudio.Package.CompoundViewAction
Namespace: Microsoft.VisualStudio.Package
Assemblies: Microsoft.VisualStudio.Package.LanguageService (em Microsoft.VisualStudio.Package.LanguageService.dll)
Microsoft.VisualStudio.Package.LanguageService.11.0 (em Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
Microsoft.VisualStudio.Package.LanguageService.9.0 (em Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
Microsoft.VisualStudio.Package.LanguageService.10.0 (em Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
Sintaxe
'Declaração
<CLSCompliantAttribute(False)> _
Public Class CompoundViewAction _
Implements IDisposable
[CLSCompliantAttribute(false)]
public class CompoundViewAction : IDisposable
O tipo CompoundViewAction expõe os membros a seguir.
Construtores
Nome | Descrição | |
---|---|---|
![]() |
CompoundViewAction | Inicializa uma nova instância da classe CompoundViewAction. |
Superior
Métodos
Nome | Descrição | |
---|---|---|
![]() |
Abort() | Encerra a ação atual de compostos, descartar todas as edições. (Herdado de CompoundActionBase.) |
![]() |
Abort() | |
![]() |
Close() | Feche a ação composta e confirmações de todas as edições no arquivo de origem. (Herdado de CompoundActionBase.) |
![]() |
Close() | |
![]() |
Dispose() | Desaloca os recursos antes de CompoundAction objeto é destruído. (Herdado de CompoundActionBase.) |
![]() |
Dispose() | |
![]() |
Equals | determina se o objeto especificado é igual ao objeto atual. (Herdado de Object.) |
![]() |
Finalize | Permite que um objeto tentar liberar recursos e realizar outras operações de limpeza antes de ser recuperados pela coleta de lixo. (Herdado de Object.) |
![]() |
FlushEditActions() | Liberações de quaisquer ações de edição pendente do composto ação atual. (Herdado de CompoundActionBase.) |
![]() |
FlushEditActions() | |
![]() |
GetHashCode | Serve como uma função de hash para um tipo específico. (Herdado de Object.) |
![]() |
GetType | Obtém Type da instância atual. (Herdado de Object.) |
![]() |
MemberwiseClone | Cria uma cópia superficial de Objectatual. (Herdado de Object.) |
![]() |
ToString | Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object.) |
Superior
Campos
Nome | Descrição | |
---|---|---|
![]() |
action | Interface para uma ação de CompoundAction. (Herdado de CompoundActionBase.) |
![]() |
opened | Especifica se uma ação composta foi aberta. (Herdado de CompoundActionBase.) |
Superior
Comentários
Essa classe é usada para simplificar a quebra automática de uma coleção de operações de edição em uma única operação.Isso é feito chamando o OpenCompoundAction método na IVsCompoundAction interface ou seja obtido ao IVsTextView objeto.Quando essa classe é descartada, o IVsCompoundAction interface é fechada e que confirma que todos os eventos edição feitos para o IVsTextLines objeto como uma única operação.
Observações para implementadores
Essa classe contém todos os elementos necessários para abrir uma ação composta dada uma IVsTextView objeto e para fechar essa ação quando essa classe é descartada.
Observações para chamadores
Criar uma instância de um CompoundViewAction objeto com o IVsTextView de objeto quando você precisa dispor de uma ou mais operações que podem ser desfeitas em uma única ação de editar.Em seguida, execute suas operações de edição como normal.Quando o novo CompoundViewAction objeto é descartado, as operações de edição são armazenadas como uma única operação.
Usar essa classe em preferência ao CompoundAction de classe como essa classe permite que o modo de exibição de texto otimizar as edições feitas.
![]() |
---|
Desde que o CompoundViewAction classe funciona diretamente com o modo de exibição, o colorizer não precisa ser suspenso pela classe. |
Exemplos
Este exemplo mostra como usar o CompoundViewAction classe.Este exemplo insere uma lista de palavras no local atual no arquivo de origem.Sem o CompoundViewAction de objeto, cada uma dessas inserções é tratada como um evento de edição separado e requer uma operação de desfazer separado.No entanto, com o CompoundViewAction object, toda a lista pode ser desfeita com uma única ação desfazer.
using Microsoft.VisualStudio.Package
namespace MyLanguagePackage
{
class CMyLanguageService : LanguageService
{
// Insert the list of words, one per line.
void InsertWords(Source src,string[] wordList)
{
if (LastActiveTextView != null)
{
CompoundViewAction action = new CompoundViewAction(LastActiveTextView,
"Update source");
using (action)
{
int currentLine = 0;
int currentCol = 0;
LastActiveTextView.GetCaretPos(out currentLine, out currentCol);
// Insert list in reverse so the words appear in the proper
// order in the sourec file.
for (int i = wordList.Length - 1, i >= 0; i--)
{
string w = wordList[i] + "\n";
src.SetText(currentLine, currentCol, currentLine, currentCol, w);
}
}
}
}
}
}
Acesso thread-safe
Quaisquer membros estático (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.