CodeElement2.Kind الخاصية
إحضار لتعداد يحدد نوع عنصر تعليمات برمجية.
مساحة الاسم: EnvDTE80
التجميع: EnvDTE80 (في EnvDTE80.dll)
بناء الجملة
'إقرار
ReadOnly Property Kind As vsCMElement
Get
vsCMElement Kind { get; }
property vsCMElement Kind {
vsCMElement get ();
}
abstract Kind : vsCMElement
function get Kind () : vsCMElement
قيمة الخاصية
النوع: EnvDTE.vsCMElement
vsCMElement2الالقيمة بتحديد العنصر رمز نوع.
التطبيقات
ملاحظات
ملاحظة
قيم عناصر نموذج تعليمات برمجية مثل فئات بنيات، الدالات، السمات، مفوضين وما إلى ذلك يمكن أن تكون غير محدداً بعد إجراء أنواع معينة من عمليات التحرير، مما يعني أن قيم الخاصة بها لا يمكن relied على إلى دوماً تبقى كما هي. للحصول على مزيد من المعلومات، راجع مقطع من "تعليمات برمجية طراز عنصر قيم يمكن تغيير" اكتشاف التعليمات البرمجية باستخدام "نموذج التعليمات البرمجية" (Visual Basic).
أمثلة
[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 = vsCMElement2.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
[#C]
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#)