Freigeben über


UndoContext.Open-Methode

Startet einen neuen Rückgängig-Vorgang.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
Sub Open ( _
    Name As String, _
    Strict As Boolean _
)
void Open(
    string Name,
    bool Strict
)
void Open(
    [InAttribute] String^ Name, 
    [InAttribute] bool Strict
)
abstract Open : 
        Name:string * 
        Strict:bool -> unit
function Open(
    Name : String, 
    Strict : boolean
)

Parameter

  • Name
    Typ: String

    Erforderlich. Stellt den Namen der Prozedur dar, für die ein Rückgängig-Kontext bereitgestellt werden soll.

  • Strict
    Typ: Boolean

    Optional. Gibt an, ob die Rückgängig-Stapel-Bindung strikt ist. Der Standardwert lautet False.

Hinweise

Wenn das UndoContext-Objekt beim Ausführen der Open-Methode bereits geöffnet ist, wird ein Fehler ausgelöst.

Falls die Bindung des Rückgängig-Stapels streng ist, müssen alle verknüpften nebengeordneten Stapel zusammen rückgängig gemacht werden oder überhaupt nicht. Ein strikt verknüpfter Rückgängigvorgang ist normalerweise bei gleichzeitigen Textänderungen in mehreren Dateien erforderlich, z. B. einer Headerdatei und einer Visual C++-Datei. Dies ist das in Visual Studio verwendete Modell. Weitere Informationen zum Rückgängigmachen von Stapelverknüpfungen finden Sie in der OpenLinkedUndo-Methode.

Beispiele

Sub OpenExample()
   ' 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, don't close it.
   If boolWasOpen = False Then
      ' Close the UndoContext object to commit the changes.
      DTE.UndoContext.Close()
   End If
End Sub

.NET Framework-Sicherheit

Siehe auch

Referenz

UndoContext Schnittstelle

EnvDTE-Namespace