CodeElement.Kind الخاصية
يحصل لتعداد يعرف نوع للكائن.
مساحة الاسم: EnvDTE
التجميع: EnvDTE (في EnvDTE.dll)
بناء الجملة
'إقرار
ReadOnly Property Kind As vsCMElement
Get
vsCMElement Kind { get; }
property vsCMElement Kind {
vsCMElement get ();
}
abstract Kind : vsCMElement
function get Kind () : vsCMElement
قيمة الخاصية
النوع: EnvDTE.vsCMElement
قيمة vsCMElement .
ملاحظات
ملاحظة
قيم عناصر نموذج تعليمات برمجية مثل فئات بنيات، الدالات، السمات، مفوضين وما إلى ذلك يمكن أن تكون غير محدداً بعد إجراء أنواع معينة من عمليات التحرير، مما يعني أن لا يكون relied قيمها على إلى دائماً تبقى كما هي. لمزيد من في تشكيل، راجع مقطع "تعليمات برمجية طراز عنصر قيم يمكن تغيير" في اكتشاف التعليمات البرمجية باستخدام "نموذج التعليمات البرمجية" (Visual Basic).
أمثلة
Sub KindExample(ByVal dte As DTE2)
' NOTE: This example requires a reference to the System.Text
' namespace.
' Before running this example, open a code document from a project.
Dim item As ProjectItem = dte.ActiveDocument.ProjectItem
Dim sb As New StringBuilder
RecurseElements(item.FileCodeModel.CodeElements, 0, sb)
MsgBox(item.Name & " contains the following elements:" & vbCrLf & _
vbCrLf & sb.ToString())
End Sub
Sub RecurseElements(ByVal elems As CodeElements, _
ByVal level As Integer, ByVal sb As StringBuilder)
Dim elem As CodeElement
For Each elem In elems
' Add element to the list of names.
sb.Append(" "c, level * 8)
sb.Append(elem.Name & " [" & elem.Kind.ToString() & "]" & _
vbCrLf)
' Call this function recursively if element has children.
If elem.Kind = vsCMElement.vsCMElementNamespace Then
RecurseElements(CType(elem, CodeNamespace).Members, _
level + 1, sb)
ElseIf elem.IsCodeType Then
RecurseElements(CType(elem, CodeType).Members, _
level + 1, sb)
End If
Next
End Sub
public void KindExample(DTE2 dte)
{
// NOTE: This example requires a reference to the
// System.Text namespace.
// Before running this example, open a code document from
// a project.
ProjectItem item = dte.ActiveDocument.ProjectItem;
StringBuilder sb = new StringBuilder();
RecurseElements(item.FileCodeModel.CodeElements, 0, sb);
MessageBox.Show(item.Name +
" contains the following elements:\n\n" + sb.ToString());
}
void RecurseElements(CodeElements elems, int level, StringBuilder sb)
{
foreach (CodeElement elem in elems)
{
// Add element to the list of names.
sb.Append(' ', level * 8);
sb.Append(elem.Name + " [" + elem.Kind.ToString() + "]\n");
// Call this function recursively if element has children.
if (elem.Kind == vsCMElement.vsCMElementNamespace)
RecurseElements(((CodeNamespace)elem).Members,
level + 1, sb);
else if (elem.IsCodeType)
RecurseElements(((CodeType)elem).Members, level + 1, sb);
}
}
أمن NET Framework.
- الثقة الكاملة للمتصل الفوري. يتعذر استخدام هذا العضو بواسطة التعليمات البرمجية الموثوق بها جزئيًا. لمزيد من المعلومات، راجع باستخدام مكتبات من تعليمات برمجية موثوق بها جزئي.
راجع أيضًَا
المرجع
موارد أخرى
كيفية: الترجمة وإعادة تشغيل أمثلة التعليمات البرمجية لطراز كائن التنفيذ التلقائي
اكتشاف التعليمات البرمجية باستخدام "نموذج التعليمات البرمجية" (Visual Basic)
اكتشاف التعليمات البرمجية باستخدام "نموذج التعليمات البرمجية" (Visual C#)