IVsTextBuffer.GetLineIndexOfPosition Method

Returns the line and column numbers in the text buffer, given a position number.

Namespace:  Microsoft.VisualStudio.TextManager.Interop
Assembly:  Microsoft.VisualStudio.TextManager.Interop (in Microsoft.VisualStudio.TextManager.Interop.dll)

Syntax

'宣言
Function GetLineIndexOfPosition ( _
    iPosition As Integer, _
    <OutAttribute> ByRef piLine As Integer, _
    <OutAttribute> ByRef piColumn As Integer _
) As Integer
'使用
Dim instance As IVsTextBuffer
Dim iPosition As Integer
Dim piLine As Integer
Dim piColumn As Integer
Dim returnValue As Integer

returnValue = instance.GetLineIndexOfPosition(iPosition, _
    piLine, piColumn)
int GetLineIndexOfPosition(
    int iPosition,
    out int piLine,
    out int piColumn
)
int GetLineIndexOfPosition(
    [InAttribute] int iPosition, 
    [OutAttribute] int% piLine, 
    [OutAttribute] int% piColumn
)
function GetLineIndexOfPosition(
    iPosition : int, 
    piLine : int, 
    piColumn : int
) : int

Parameters

  • iPosition
    Type: System.Int32

    [in] Position number of the desired line.

  • piLine
    Type: System.Int32%

    [out] Pointer to the line number.

  • piColumn
    Type: System.Int32%

    [out] Pointer to the column position on the line.

Return Value

Type: System.Int32

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

Remarks

COM Signature

From textmgr.idl:

HRESULT IVsTextBuffer::GetLineIndexOfPosition(
   [in] long iPosition,
   [out] long *piLine,
   [out] CharIndex *piColumn
);

This method might require considerable resources, depending upon the underlying implementation of the buffer. That is, it might be very difficult to calculate the size of the buffer if it is a virtual-line-oriented implementation as in Visual Basic.

Permissions

See Also

Reference

IVsTextBuffer Interface

IVsTextBuffer Members

Microsoft.VisualStudio.TextManager.Interop Namespace