TextPoint.CodeElement-Eigenschaft
Gibt das Codeelement an der Position von TextPoint zurück.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
ReadOnly Property CodeElement ( _
Scope As vsCMElement _
) As CodeElement
CodeElement this[
vsCMElement Scope
] { get; }
property CodeElement^ CodeElement[[InAttribute] vsCMElement Scope] {
CodeElement^ get ([InAttribute] vsCMElement Scope);
}
abstract CodeElement : CodeElement
JScript unterstützt keine indizierten Eigenschaften.
Parameter
- Scope
Typ: EnvDTE.vsCMElement
Erforderlich.Eine vsCMElement-Konstante, die das Codeelement des angegebenen Typs angibt, das die Editorposition enthält.
Eigenschaftswert
Typ: EnvDTE.CodeElement
Ein CodeElement-Objekt.
Hinweise
Wenn sich der festgelegte Codeelementtyp nicht an der Position von TextPoint befindet, gibt CodeElement den Wert Nothing zurück.CodeElement ist eine Kurzform für TextPoint.Parent.Parent.ProjectItem.CodeModel.CodeElementFromPoint(TextPoint, <scope>).
Beispiele
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.get_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);
}
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.
Siehe auch
Referenz
Weitere Ressourcen
Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell