Interface UndoContext
Representa, como uma única transação, todas as operações executadas em todos os participantes abrir documentos Visual Studio. Se sua SetAborted método é chamado, todas as alterações feitas desde a abertura do objeto são descartadas.
Namespace: EnvDTE
Assembly: EnvDTE (em EnvDTE.dll)
Sintaxe
'Declaração
<GuidAttribute("D8DEC44D-CAF2-4B39-A539-B91AE921BA92")> _
Public Interface UndoContext
[GuidAttribute("D8DEC44D-CAF2-4B39-A539-B91AE921BA92")]
public interface UndoContext
[GuidAttribute(L"D8DEC44D-CAF2-4B39-A539-B91AE921BA92")]
public interface class UndoContext
[<GuidAttribute("D8DEC44D-CAF2-4B39-A539-B91AE921BA92")>]
type UndoContext = interface end
public interface UndoContext
O tipo UndoContext expõe os membros a seguir.
Propriedades
Nome | Descrição | |
---|---|---|
DTE | Obtém o objeto de extensibilidade de nível superior. | |
IsAborted | Obtém se o UndoContext operação do objeto foi finalizada pelo SetAborted método. | |
IsOpen | Obtém se uma operação de desfazer está atualmente em vigor ou se uma solução é aberta. | |
IsStrict | Obtém se a ligação de pilha de desfazer é estrita. | |
Parent | Obtém o objeto pai imediato de um UndoContext objeto. |
Início
Métodos
Nome | Descrição | |
---|---|---|
Close | Termina uma operação de desfazer. | |
Open | Inicia uma nova operação de desfazer. | |
SetAborted | Descarta todas as alterações para participantes de documentos abertos desde a abertura de UndoContext objeto. |
Início
Comentários
O UndoContext retornado pelo objeto de UndoContext propriedade da _DTE objeto. Há apenas um serviço de desfazer global em Visual Studio que é aberta ou fechada. Após a UndoContext objeto é aberto, todas as atualizações feitas em documentos em Visual Studio pode ser revertido (desfeito) por uma única ação desfazer, o SetAborted método, até que o objeto está fechado. Se a SetAborted método é chamado, todas as alterações feitas desde a abertura do objeto são descartadas.
Para usar o UndoContext o objeto, abri-lo, faça alterações do documento e então feche o objeto para finalizar as alterações.
Para descartar as alterações, chamar o SetAborted método antes de fechar o UndoContext objeto. Depois de fechar UndoContext o objeto, você não pode desfazer as alterações.
Observação |
---|
Antes de usar o UndoContext objeto, verifique se está já aberto a partir de uma operação anterior. Se já estiver aberto, suas alterações serão desfeitas em todos os documentos de participantes, juntamente com todas as alterações feitas desde que o objeto foi aberto pela primeira vez. Se o UndoContext objeto está já aberto quando você marcá-la, fechá-lo, porque o chamador anterior ainda requer a ele para uma operação de desfazer. Conseqüentemente, você não deve chamar SetAborted e feche o UndoContext de objeto, a menos que você originalmente aberto proprietário. Feche-o quando terminar de alterar o texto em documentos. |
Exemplos
Sub UndoContextExample()
' Before running, select text in an open document.
Dim txtSel As TextSelection
Dim strTS As String, boolWasOpen As Boolean
txtSel = DTE.ActiveDocument.Selection
strTS = txtSel.Text
' Check to see if UndoContext object is already open.
If DTE.UndoContext.IsOpen = True Then
boolWasOpen = True
Else
' Open the UndoContext object to track changes.
DTE.UndoContext.Open("RemoveNewLines", False)
End If
' Perform search for newline characters and remove them.
If strTS <> "" Then
txtSel.Delete()
strTS = Replace(strTS, vbNewLine, "", Compare:=vbTextCompare)
txtSel.Insert(strTS)
End If
' If UndoContext was already open, do not close it.
If boolWasOpen = False Then
' Close the UndoContext object to commit the changes.
DTE.UndoContext.Close()
End If
End Sub