UndoContext.IsOpen Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает сведения о том, можно ли выполнить в настоящий момент операцию отмены и открыто ли решение.
public:
property bool IsOpen { bool get(); };
public:
property bool IsOpen { bool get(); };
[System.Runtime.InteropServices.DispId(8)]
public bool IsOpen { [System.Runtime.InteropServices.DispId(8)] get; }
[<System.Runtime.InteropServices.DispId(8)>]
[<get: System.Runtime.InteropServices.DispId(8)>]
member this.IsOpen : bool
Public ReadOnly Property IsOpen As Boolean
Значение свойства
Логическое значение, равное true, если операцию отмены можно выполнить и решение открыто, и false в противном случае.
- Атрибуты
Примеры
Sub IsOpenExample(ByVal dte As DTE2)
' Create a new text file.
dte.ItemOperations.NewFile()
Dim doc As TextDocument = _
CType(dte.ActiveDocument.Object("TextDocument"), TextDocument)
Dim done As Boolean = False
Do While Not done
If dte.UndoContext.IsOpen = False Then
Try
dte.UndoContext.Open("Insert 10 Lines")
' Insert 10 lines of text into the new document.
Dim point As EditPoint = doc.StartPoint.CreateEditPoint
Dim i As Integer
For i = 1 To 10
point.Insert("This is a test." & vbCrLf)
Next
done = True
Catch
Finally
If done Then dte.UndoContext.Close()
End Try
End If
Loop
End Sub
public void IsOpenExample(DTE2 dte)
{
// Create a new text file.
dte.ItemOperations.NewFile(@"General\Text File", "",
Constants.vsViewKindPrimary);
TextDocument doc =
(TextDocument)dte.ActiveDocument.Object("TextDocument");
bool done = false;
while (!done)
{
if (!dte.UndoContext.IsOpen)
{
try
{
dte.UndoContext.Open("Insert 10 Lines", false);
// Insert 10 lines of text into the new document.
EditPoint point = doc.StartPoint.CreateEditPoint();
for (int i = 0; i < 10; ++i)
point.Insert("This is a test.\n");
done = true;
}
catch
{
}
finally
{
if (done) dte.UndoContext.Close();
}
}
}
}
Комментарии
Если объект открыт, действует операция отмены UndoContext .
Открытое решение не обязательно содержит файл решения (SLN), так как он, возможно, еще не сохранен.