ITextViewLineCollection Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Hilfsklasse für den Zugriff auf die Auflistung von ITextViewLine-Objekten der Ansicht dar. Die TextViewLines-Eigenschaft für wird ITextView verwendet, um eine instance dieser Schnittstelle abzurufen.
public interface class ITextViewLineCollection : System::Collections::Generic::ICollection<Microsoft::VisualStudio::Text::Formatting::ITextViewLine ^>, System::Collections::Generic::IEnumerable<Microsoft::VisualStudio::Text::Formatting::ITextViewLine ^>, System::Collections::Generic::IList<Microsoft::VisualStudio::Text::Formatting::ITextViewLine ^>
public interface ITextViewLineCollection : System.Collections.Generic.ICollection<Microsoft.VisualStudio.Text.Formatting.ITextViewLine>, System.Collections.Generic.IEnumerable<Microsoft.VisualStudio.Text.Formatting.ITextViewLine>, System.Collections.Generic.IList<Microsoft.VisualStudio.Text.Formatting.ITextViewLine>
type ITextViewLineCollection = interface
interface IList<ITextViewLine>
interface ICollection<ITextViewLine>
interface seq<ITextViewLine>
interface IEnumerable
Public Interface ITextViewLineCollection
Implements ICollection(Of ITextViewLine), IEnumerable(Of ITextViewLine), IList(Of ITextViewLine)
- Abgeleitet
- Implementiert
Hinweise
Das ITextView -Objekt ITextViewLineCollection und alle ITextViewLine darin enthaltenen Objekte werden jedes Mal gelöscht, wenn ein neues Layout generiert wird.
Die meisten Eigenschaften und Parameter, die Doubles sind, entsprechen Koordinaten oder Entfernungen im Textrenderingkoordinatensystem. In diesem Koordinatensystem entspricht x = 0,0 dem linken Rand der Zeichnungsfläche, auf der Text gerendert wird (x = Ansicht. ViewportLeft entspricht dem linken Rand des Viewports), und y = View. ViewportTop entspricht dem oberen Rand des Viewports. Die x-Koordinate erhöht sich von links nach rechts, und die y-Koordinate erhöht sich von oben nach unten.
Die horizontale und vertikale Achse der Ansicht verhalten sich unterschiedlich. Wenn der Text in der Ansicht formatiert ist, werden nur die sichtbaren Zeilen formatiert. Daher kann ein Viewport nicht horizontal und vertikal auf die gleiche Weise gescrollt werden.
Ein Viewport wird horizontal gescrollt, indem die linke Koordinate des Viewports so geändert wird, dass er in Bezug auf die Zeichnungsoberfläche verschoben wird.
Eine Ansicht kann nur vertikal gescrollt werden, indem ein neues Layout ausgeführt wird.
Das Erstellen eines Layouts in der Ansicht kann dazu führen, dass sich die ViewportTop-Eigenschaft der Ansicht ändert. Wenn Sie beispielsweise eine Zeile nach unten scrollen, werden keine der sichtbaren Zeilen übersetzt. Stattdessen wird einfach die ViewportTop-Eigenschaft der Ansicht geändert (wodurch sich die Linien auf dem Bildschirm bewegen, obwohl sich ihre y-Koordinaten nicht geändert haben).
Entfernungen im Textrenderingkoordinatensystem entsprechen logischen Pixeln. Wenn die Textrenderingoberfläche ohne Skalierungstransformation angezeigt wird, entspricht 1 Einheit im Textrenderingkoordinatensystem einem Pixel auf der Anzeige.
Eigenschaften
FirstVisibleLine |
Ruft die erste Zeile ab, die nicht vollständig ausgeblendet ist. |
FormattedSpan |
Ruft den in dieser ITextViewLine-Auflistung enthaltenen Textabschnitt ab. |
IsValid |
Bestimmt, ob dieses ITextViewLineCollection-Objekt noch gültig ist. |
LastVisibleLine |
Ruft die letzte Zeile ab, die nicht vollständig ausgeblendet ist. |
Methoden
ContainsBufferPosition(SnapshotPoint) |
Bestimmt, ob die angegebene Pufferposition in einem der ITextViewLine-Objekte in der Auflistung enthalten ist. |
GetCharacterBounds(SnapshotPoint) |
Ruft die Textbegrenzungen der angegebenen Textpufferposition ab. |
GetIndexOfTextLine(ITextViewLine) |
Ruft den Index der angegebenen Textansichtszeile in den Textzeilen ab. |
GetNormalizedTextBounds(SnapshotSpan) |
Ruft eine Auflistung von TextBounds-Strukturen für den Text ab, die der angegebenen Spanne entspricht. |
GetTextElementSpan(SnapshotPoint) |
Ruft die Spanne ab, deren Textelementspanne die angegebene Pufferposition enthält. |
GetTextViewLineContainingBufferPosition(SnapshotPoint) |
Ruft die ITextViewLine ab, die die angegebene Textpufferposition enthält. |
GetTextViewLineContainingYCoordinate(Double) |
Ruft die ITextViewLine ab, die die angegebene y-Koordinate enthält. |
GetTextViewLinesIntersectingSpan(SnapshotSpan) |
Ruft alle ITextViewLine-Objekte ab, die |
IntersectsBufferSpan(SnapshotSpan) |
Gibt an, ob die angegebene Pufferspanne eines der ITextViewLine Objekte in der Auflistung überschneidet. |
Erweiterungsmethoden
EmptyIfNull<T>(IEnumerable<T>) |
Gibt diese Enumeration zurück, falls sie nicht NULL ist. Wenn es NULL ist, geben Sie eine leere Enumeration zurück. |