将关系图中的位置映射到关系图中处于较低层的匹配缓冲区内的位置。 源缓冲区被视为低于使用它们的投影缓冲区。
命名空间: Microsoft.VisualStudio.Text.Projection
程序集: Microsoft.VisualStudio.Text.Data(在 Microsoft.VisualStudio.Text.Data.dll 中)
语法
声明
Function MapDownToFirstMatch ( _
position As SnapshotPoint, _
trackingMode As PointTrackingMode, _
match As Predicate(Of ITextSnapshot), _
affinity As PositionAffinity _
) As Nullable(Of SnapshotPoint)
Nullable<SnapshotPoint> MapDownToFirstMatch(
SnapshotPoint position,
PointTrackingMode trackingMode,
Predicate<ITextSnapshot> match,
PositionAffinity affinity
)
Nullable<SnapshotPoint> MapDownToFirstMatch(
SnapshotPoint position,
PointTrackingMode trackingMode,
Predicate<ITextSnapshot^>^ match,
PositionAffinity affinity
)
abstract MapDownToFirstMatch :
position:SnapshotPoint *
trackingMode:PointTrackingMode *
match:Predicate<ITextSnapshot> *
affinity:PositionAffinity -> Nullable<SnapshotPoint>
function MapDownToFirstMatch(
position : SnapshotPoint,
trackingMode : PointTrackingMode,
match : Predicate<ITextSnapshot>,
affinity : PositionAffinity
) : Nullable<SnapshotPoint>
参数
position
类型:Microsoft.VisualStudio.Text.SnapshotPoint关系图中的缓冲区内的位置。
trackingMode
类型:Microsoft.VisualStudio.Text.PointTrackingMode如何跟踪 position 直到当前快照(如果需要)。
match
类型:Predicate<ITextSnapshot>标识目标缓冲区的谓词。
affinity
类型:Microsoft.VisualStudio.Text.PositionAffinity如果映射不明确(位置位于源范围接合处),则确定映射目标应紧跟在顶层缓冲区中前一个字符之后还是应紧跟在后一个字符之前。
如果映射明确,则此设置不起作用。
返回值
类型:Nullable<SnapshotPoint>
在目标缓冲区快照中的一个点或 nullnull 引用(在 Visual Basic 中为 Nothing) ,如果此位置未向下映射到 match选择的任何缓冲区。
异常
异常 | 条件 |
---|---|
ArgumentNullException | position。快照或 match 是 nullnull 引用(在 Visual Basic 中为 Nothing)。 |
ArgumentOutOfRangeException | trackingMode 不是有效的 PointTrackingMode,或者 affinity 不是有效的 PositionAffinity。 |
备注
match 谓词对缓冲区关系图中的每个文本缓冲区,直到返回 true。 在谓词不再调用。
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关详细信息,请参阅通过部分受信任的代码使用库。