IBufferGraph.MapDownToFirstMatch 方法

定义

重载

MapDownToFirstMatch(SnapshotSpan, SpanTrackingMode, Predicate<ITextSnapshot>)

将关系图中某个缓冲区内的快照范围映射到谓词选择的某个源快照中的零个或多个范围序列。

MapDownToFirstMatch(SnapshotPoint, PointTrackingMode, Predicate<ITextSnapshot>, PositionAffinity)

将关系图中的位置映射到关系图中较低位置的匹配缓冲区中的位置。 源缓冲区被视为低于使用它们的投影缓冲区。

MapDownToFirstMatch(SnapshotSpan, SpanTrackingMode, Predicate<ITextSnapshot>)

将关系图中某个缓冲区内的快照范围映射到谓词选择的某个源快照中的零个或多个范围序列。

public:
 Microsoft::VisualStudio::Text::NormalizedSnapshotSpanCollection ^ MapDownToFirstMatch(Microsoft::VisualStudio::Text::SnapshotSpan span, Microsoft::VisualStudio::Text::SpanTrackingMode trackingMode, Predicate<Microsoft::VisualStudio::Text::ITextSnapshot ^> ^ match);
public Microsoft.VisualStudio.Text.NormalizedSnapshotSpanCollection MapDownToFirstMatch (Microsoft.VisualStudio.Text.SnapshotSpan span, Microsoft.VisualStudio.Text.SpanTrackingMode trackingMode, Predicate<Microsoft.VisualStudio.Text.ITextSnapshot> match);
abstract member MapDownToFirstMatch : Microsoft.VisualStudio.Text.SnapshotSpan * Microsoft.VisualStudio.Text.SpanTrackingMode * Predicate<Microsoft.VisualStudio.Text.ITextSnapshot> -> Microsoft.VisualStudio.Text.NormalizedSnapshotSpanCollection
Public Function MapDownToFirstMatch (span As SnapshotSpan, trackingMode As SpanTrackingMode, match As Predicate(Of ITextSnapshot)) As NormalizedSnapshotSpanCollection

参数

span
SnapshotSpan

要映射的跨度。

trackingMode
SpanTrackingMode

span如果需要,如何跟踪当前快照。

match
Predicate<ITextSnapshot>

用于标识目标缓冲区的谓词。

返回

NormalizedSnapshotSpanCollection

TopSpan 映射到的目标缓冲区中的零个或多个快照范围的集合。

例外

span.快照或 match 为 null。

trackingMode 不是有效的 SpanTrackingMode

注解

match 在缓冲区图中的每个文本缓冲区上调用,直到返回 true。 将不会再次调用该谓词。

适用于

MapDownToFirstMatch(SnapshotPoint, PointTrackingMode, Predicate<ITextSnapshot>, PositionAffinity)

将关系图中的位置映射到关系图中较低位置的匹配缓冲区中的位置。 源缓冲区被视为低于使用它们的投影缓冲区。

public:
 Nullable<Microsoft::VisualStudio::Text::SnapshotPoint> MapDownToFirstMatch(Microsoft::VisualStudio::Text::SnapshotPoint position, Microsoft::VisualStudio::Text::PointTrackingMode trackingMode, Predicate<Microsoft::VisualStudio::Text::ITextSnapshot ^> ^ match, Microsoft::VisualStudio::Text::PositionAffinity affinity);
public Microsoft.VisualStudio.Text.SnapshotPoint? MapDownToFirstMatch (Microsoft.VisualStudio.Text.SnapshotPoint position, Microsoft.VisualStudio.Text.PointTrackingMode trackingMode, Predicate<Microsoft.VisualStudio.Text.ITextSnapshot> match, Microsoft.VisualStudio.Text.PositionAffinity affinity);
abstract member MapDownToFirstMatch : Microsoft.VisualStudio.Text.SnapshotPoint * Microsoft.VisualStudio.Text.PointTrackingMode * Predicate<Microsoft.VisualStudio.Text.ITextSnapshot> * Microsoft.VisualStudio.Text.PositionAffinity -> Nullable<Microsoft.VisualStudio.Text.SnapshotPoint>
Public Function MapDownToFirstMatch (position As SnapshotPoint, trackingMode As PointTrackingMode, match As Predicate(Of ITextSnapshot), affinity As PositionAffinity) As Nullable(Of SnapshotPoint)

参数

position
SnapshotPoint

在图中的缓冲区中的位置。

trackingMode
PointTrackingMode

position如果需要,如何跟踪当前快照。

match
Predicate<ITextSnapshot>

用于标识目标缓冲区的谓词。

affinity
PositionAffinity

如果映射不明确 (位置位于源跨距接合) 上,则确定映射应以紧靠前一个字符之后或紧靠顶部缓冲区中以下字符之前的位置为目标。 如果映射明确,则此设置不起作用。

返回

Nullable<SnapshotPoint>

目标缓冲区的快照中的一个点; 如果不 position 映射到所选的任何缓冲区,则为 null match

例外

position.快照或 match 为 null。

trackingMode 不是有效 PointTrackingMode 的,或者 affinity 不是有效的 PositionAffinity

注解

match 缓冲区图中的每个文本缓冲区上调用谓词,直到返回 true。 将不会再次调用该谓词。

适用于