UndoContext Интерфейс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет, как единую транзакцию, все операции, выполняемые над всеми участвующими открытыми документами в Visual Studio. При вызове метода SetAborted() все изменения, сделанные с момента открытия объекта, будут отменены.
public interface class UndoContext
public interface class UndoContext
__interface UndoContext
[System.Runtime.InteropServices.Guid("D8DEC44D-CAF2-4B39-A539-B91AE921BA92")]
[System.Runtime.InteropServices.TypeLibType(4160)]
public interface UndoContext
[<System.Runtime.InteropServices.Guid("D8DEC44D-CAF2-4B39-A539-B91AE921BA92")>]
[<System.Runtime.InteropServices.TypeLibType(4160)>]
type UndoContext = interface
Public Interface UndoContext
- Атрибуты
Примеры
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
Комментарии
UndoContextОбъект возвращается UndoContext свойством _DTE объекта. В этой службе есть только одна глобальная служба отмены Visual Studio , открытая или закрытая. После UndoContext открытия объекта все обновления, внесенные в документы в, Visual Studio могут быть отменены (отменены) одним действием отмены — SetAborted методом, пока объект не будет закрыт. При SetAborted вызове метода все изменения, внесенные с момента открытия объекта, отбрасываются.
Чтобы использовать UndoContext объект, откройте его, внесите изменения в документ, а затем закройте объект, чтобы завершить изменения.
Чтобы отменить изменения, вызовите SetAborted метод перед закрытием UndoContext объекта. После закрытия UndoContext объекта вы больше не сможете отменить изменения.
Примечание
Перед использованием UndoContext объекта убедитесь, что он уже открыт из предыдущей операции. Если он уже открыт, изменения будут отменены во всех участвующих документах, а все изменения, выполненные с момента первого открытия объекта. Если UndoContext объект уже открыт при его проверке, не закрывайте его, так как для предыдущего вызывающего объекта по-прежнему требуется операция отмены. Следовательно, не следует вызывать SetAborted и закрывать объект, UndoContext если он не был открыт ранее. Завершив изменение текста в документах, закройте его.
Свойства
| DTE |
Возвращает объект расширения верхнего уровня. |
| IsAborted |
Возвращает сведения о том, была ли операция объекта UndoContext завершена с помощью метода SetAborted(). |
| IsOpen |
Возвращает сведения о том, можно ли выполнить в настоящий момент операцию отмены и открыто ли решение. |
| IsStrict |
Возвращает сведения о том, является ли строгой компоновка стека отмены. |
| Parent |
Получает ближайший родительский объект для объекта UndoContext. |
Методы
| Close() |
Завершает операцию отмены. |
| Open(String, Boolean) |
Запускает новую операцию отмены. |
| SetAborted() |
Отменяет все изменения в участвующих открытых документах, внесенные после открытия объекта UndoContext. |