Share via


CodeDelegate2.GetStartPoint Method

Returns a TextPoint object that defines the beginning of the delegate definition.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Syntax

'Declaration
Function GetStartPoint ( _
    Part As vsCMPart _
) As TextPoint
TextPoint GetStartPoint(
    vsCMPart Part
)
TextPoint^ GetStartPoint(
    [InAttribute] vsCMPart Part
)
abstract GetStartPoint : 
        Part:vsCMPart -> TextPoint
function GetStartPoint(
    Part : vsCMPart
) : TextPoint

Parameters

Return Value

Type: EnvDTE.TextPoint
A TextPoint object.

Remarks

The TextPoint object represents the beginning of the delegate definition. The Part parameter defines the portion of the delegate to return.

Note

The values of code model elements such as classes, structs, functions, attributes, delegates, and so forth can be non-deterministic after making certain kinds of edits, meaning that their values cannot be relied upon to always remain the same. For more information, see the section Code Model Element Values Can Change in Discovering Code by Using the Code Model (Visual Basic).

Examples

Before running this example, load a project with a class and insert the following line along with the example code. After both the line and the example code are added, click the Delegate line to place the insertion point there, and then run the example.

[VisualBasic]

Delegate Sub MySubDelegate(ByVal x As Integer)

[C#]

public delegate void MySubDelegate(int x);

[VisualBasic]

Public Sub getStartEndPointExample(ByVal dte As DTE2)
    Try
        ' Retrieve the CodeClass at the insertion point.
        Dim sel As TextSelection = _
          CType(dte.ActiveDocument.Selection, TextSelection)
        Dim del As CodeDelegate2 = _
          CType(sel.ActivePoint.CodeElement( _
          vsCMElement.vsCMElementDelegate), CodeDelegate2)
        Dim sb As New System.Text.StringBuilder

        ' Get the start and endpoint offsest for the delegate.
        sb.AppendLine("Startpoint: " & _
          del.GetStartPoint(vsCMPart.vsCMPartBody) _
          .LineCharOffset.ToString)
        sb.AppendLine("Endpoint: " & _
          del.GetEndPoint(vsCMPart.vsCMPartBody) _
          .LineCharOffset.ToString)
        MessageBox.Show(sb.ToString)
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub

.NET Framework Security

See Also

Reference

CodeDelegate2 Interface

EnvDTE80 Namespace

Other Resources

How to: Compile and Run the Automation Object Model Code Examples

Discovering Code by Using the Code Model (Visual Basic)

Discovering Code by Using the Code Model (Visual C#)