Klasa CompoundViewAction
Zarządza wielu edytowanie akcji, które są traktowane jako pojedyncza operacja, zoptymalizowany pod kątem wyświetlanie tekstu.
Ten interfejs API nie jest zgodny ze specyfikacją CLS. Alternatywa zgodna ze specyfikacją CLS to [None].
Hierarchia dziedziczenia
System.Object
Microsoft.VisualStudio.Package.CompoundViewAction
Przestrzeń nazw: Microsoft.VisualStudio.Package
Zestawy: Microsoft.VisualStudio.Package.LanguageService (w Microsoft.VisualStudio.Package.LanguageService.dll)
Microsoft.VisualStudio.Package.LanguageService.11.0 (w Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
Microsoft.VisualStudio.Package.LanguageService.9.0 (w Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
Microsoft.VisualStudio.Package.LanguageService.10.0 (w Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
Składnia
'Deklaracja
<CLSCompliantAttribute(False)> _
Public Class CompoundViewAction _
Implements IDisposable
[CLSCompliantAttribute(false)]
public class CompoundViewAction : IDisposable
Typ CompoundViewAction uwidacznia następujące elementy członkowskie.
Konstruktorzy
Nazwa | Opis | |
---|---|---|
![]() |
CompoundViewAction | Inicjuje nowe wystąpienie CompoundViewAction klasy. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
![]() |
Abort() | Kończy bieżącą akcję mieszanek Wyrzuca wszystkie edycje. (Odziedziczone z CompoundActionBase). |
![]() |
Abort() | |
![]() |
Close() | Zamknij mieszanek działania i zatwierdzenia, wszystkie modyfikacje w pliku źródłowym. (Odziedziczone z CompoundActionBase). |
![]() |
Close() | |
![]() |
Dispose() | Zwalnia wszystkie zasoby tuż przed CompoundAction niszczony jest obiekt. (Odziedziczone z CompoundActionBase). |
![]() |
Dispose() | |
![]() |
Equals | Określa, czy określony obiekt jest równa bieżącego obiektu. (Odziedziczone z Object). |
![]() |
Finalize | Umożliwia obiekt spróbuj zwolnić zasoby i wykonywania innych operacji oczyszczania, zanim jest odzyskane w procesie wyrzucania elementów bezużytecznych. (Odziedziczone z Object). |
![]() |
FlushEditActions() | Opróżnia wszystkie oczekujące edytowanie akcji z bieżącej akcji mieszanek. (Odziedziczone z CompoundActionBase). |
![]() |
FlushEditActions() | |
![]() |
GetHashCode | Służy jako funkcja mieszania dla określonego typu. (Odziedziczone z Object). |
![]() |
GetType | Pobiera Type bieżącej instancji. (Odziedziczone z Object). |
![]() |
MemberwiseClone | Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object). |
![]() |
ToString | Zwraca ciąg, który reprezentuje bieżącego obiektu. (Odziedziczone z Object). |
Początek
Pola
Nazwa | Opis | |
---|---|---|
![]() |
action | Interfejs dla akcji CompoundAction. (Odziedziczone z CompoundActionBase). |
![]() |
opened | Określa, jeżeli został otwarty mieszanek działania. (Odziedziczone z CompoundActionBase). |
Początek
Uwagi
To klasa jest używana do uproszczenia zawijania to kolekcja operacji edycji w pojedynczej operacji.Jest to osiągane przez wywołanie OpenCompoundAction metody na IVsCompoundAction to jest interfejs uzyskane z określonego IVsTextView obiektu.Podczas tej klasy jest usuwany, IVsCompoundAction interfejsu jest zamknięty i która zobowiązuje wszystkie zdarzenia edycji do IVsTextLines obiektu jako pojedynczej operacji.
Uwagi dotyczące implementacji
Ta klasa zawiera wszystko, co niezbędne otworzyć działanie mieszanek, biorąc pod uwagę IVsTextView obiektu i zamknąć tej akcji, gdy tej klasy jest usuwany.
Uwagi dotyczące wywoływania
Utwórz wystąpienie CompoundViewAction obiekt z IVsTextView obiektu, gdy konieczne jest zawijany, jeden lub więcej edytować operacje, które mogą zostać cofnięte w jednej operacji.Następnie wykonać swoje operacje edycyjne w normalnym trybie.Gdy nowy CompoundViewAction obiektu jest usuwany, operacje edycji są przechowywane jako pojedynczej operacji.
Użyj tej klasy w CompoundAction klasy tej klasy pozwala na wyświetlanie tekstu do optymalizowania edycje.
[!UWAGA]
Ponieważ CompoundViewAction klasy współpracuje bezpośrednio z widoku, colorizer, niezbędne jest zawieszenie przez klasę.
Przykłady
W tym przykładzie przedstawiono sposób użycia CompoundViewAction klasy.W tym przykładzie wstawia listy wyrazów w bieżącej lokalizacji w pliku źródłowym.Bez CompoundViewAction obiektów, każdy z tych wstawienia jest traktowana jako zdarzenie edit oddzielnych i wymaga operacji Cofnij oddzielne.Jednakże, z CompoundViewAction obiektów, całą listę można cofnąć z jednego polecenia Cofnij.
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);
}
}
}
}
}
}
Bezpieczeństwo wątku
Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.