Compartir a través de


EditPoint.CodeElement (Propiedad) (vsCMElement)

Obtiene el elemento de código en la ubicación de EditPoint.

Espacio de nombres:  EnvDTE
Ensamblado:  EnvDTE (en EnvDTE.dll)

Sintaxis

'Declaración
ReadOnly Property CodeElement ( _
    Scope As vsCMElement _
) As CodeElement
    Get
CodeElement this[
    vsCMElement Scope
] { get; }
property CodeElement^ CodeElement[[InAttribute] vsCMElement Scope] {
    CodeElement^ get ([InAttribute] vsCMElement Scope);
}
abstract CodeElement : CodeElement
JScript no admite propiedades indizadas.

Parámetros

  • Scope
    Tipo: EnvDTE.vsCMElement
    Obligatorio.Constante vsCMElement que indica el elemento de código con el tipo especificado que contiene la ubicación del editor.

Valor de propiedad

Tipo: EnvDTE.CodeElement
Objeto CodeElement.

Implementaciones

TextPoint.CodeElement[vsCMElement]

Comentarios

Si el tipo de elemento de código especificado no está en la ubicación EditPoint, el objeto CodeElement devuelve Nothing. CodeElement es un acceso directo para TextPoint.Parent.Parent.ProjectItem.CodeModel.CodeElementFromPoint(TextPoint, <scope>).

Ejemplos

Sub CodeElementExample(ByVal dte As DTE2)

    ' Before running this example, open a code document from a project
    ' and place the insertion point anywhere inside the source code.
    Try
        Dim sel As TextSelection = _
            CType(dte.ActiveDocument.Selection, TextSelection)
        Dim pnt As TextPoint = CType(sel.ActivePoint, TextPoint)

        ' Discover every code element containing the insertion point.
        Dim elems As String
        Dim elem As CodeElement
        Dim scope As vsCMElement
        For Each scope In [Enum].GetValues(scope.GetType())
            elem = pnt.CodeElement(scope)
            If IsNothing(elem) = False Then
                elems &= elem.Name & _
                    " (" & scope.ToString() & ")" & vbCrLf
            End If
        Next

        MsgBox("The following elements contain the insertion point:" _
            & vbCrLf & vbCrLf & elems)
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub
public void CodeElementExample(DTE2 dte)
{
    // Before running this example, open a code document from a project
    // and place the insertion point anywhere inside the source code.
    try
    {
        TextSelection sel = 
            (TextSelection)dte.ActiveDocument.Selection;
        TextPoint pnt = (TextPoint)sel.ActivePoint;

        // Discover every code element containing the insertion point.
        string elems = "";
        vsCMElement scopes = 0;

        foreach (vsCMElement scope in Enum.GetValues(scopes.GetType()))
        {
            CodeElement elem = pnt.CodeElement(scope);

            if (elem != null)
                elems += elem.Name + 
                    " (" + scope.ToString() + ")\n";
        }

        MessageBox.Show(
            "The following elements contain the insertion point:\n\n" 
            + elems);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Seguridad de .NET Framework

Vea también

Referencia

EditPoint Interfaz

CodeElement (Sobrecarga)

EnvDTE (Espacio de nombres)

Otros recursos

Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización