Aracılığıyla paylaş


CodeElement2 Arabirim

Kod öğesi veya yapı bir kaynak dosyasında temsil eder.

Ad alanı:  EnvDTE80
Derleme:  EnvDTE80 (EnvDTE80.dll içinde)

Sözdizimi

'Bildirim
<GuidAttribute("F03DCCE8-233B-43D7-A66B-A66EFC1F85C3")> _
Public Interface CodeElement2 _
    Inherits CodeElement
[GuidAttribute("F03DCCE8-233B-43D7-A66B-A66EFC1F85C3")]
public interface CodeElement2 : CodeElement
[GuidAttribute(L"F03DCCE8-233B-43D7-A66B-A66EFC1F85C3")]
public interface class CodeElement2 : CodeElement
[<GuidAttribute("F03DCCE8-233B-43D7-A66B-A66EFC1F85C3")>]
type CodeElement2 =  
    interface
        interface CodeElement
    end
public interface CodeElement2 extends CodeElement

CodeElement2 türü aşağıdaki üyeleri ortaya koyar.

Özellikler

  Ad Açıklama
Genel özellik Children (CodeElement kaynağından devralındı.)
Genel özellik Children Bunun içinde yer alan nesneler topluluğu alır CodeElement2.
Genel özellik Collection (CodeElement kaynağından devralındı.)
Genel özellik Collection Alır CodeElements koleksiyonu içeren CodeElement2 destekleyen bu özelliği.
Genel özellik DTE (CodeElement kaynağından devralındı.)
Genel özellik DTE Üst düzey bir geniþletilebilirlik nesnesi alır.
Genel özellik ElementID Öğeyi benzersiz olarak tanımlayan bir değer alır.Visual C# [NULL]'ta uygulanmadı.
Genel özellik EndPoint (CodeElement kaynağından devralındı.)
Genel özellik EndPoint Konum kodu madde ucunun metin noktası alır.
Genel özellik Extender[String] (CodeElement kaynağından devralındı.)
Genel özellik Extender[String] Bu amaçla kullanılabilir değilse istenen Extender # CodeElement2 nesne.Visual C# [NULL]'ta uygulanmadı.
Genel özellik ExtenderCATID (CodeElement kaynağından devralındı.)
Genel özellik ExtenderCATID Extender category ID (catID) için alır CodeElement2 nesne.Visual C# [NULL]'ta uygulanmadı.
Genel özellik ExtenderNames (CodeElement kaynağından devralındı.)
Genel özellik ExtenderNames Kullanılabilir Extender için listesini alır CodeElement2 nesne.Visual C# [NULL]'ta uygulanmadı.
Genel özellik FullName (CodeElement kaynağından devralındı.)
Genel özellik FullName Dosyanın tam yolunu ve adını alır CodeElement2 nesnenin dosya.
Genel özellik InfoLocation (CodeElement kaynağından devralındı.)
Genel özellik InfoLocation Kod modeli özellikleri alır.
Genel özellik IsCodeType (CodeElement kaynağından devralındı.)
Genel özellik IsCodeType Alır olup olmadığı bir CodeType nesnesi elde edilebilir dan CodeElement2 nesne.
Genel özellik Kind (CodeElement kaynağından devralındı.)
Genel özellik Kind Kod öğesi türünü tanımlayan bir numaralandırma alır.
Genel özellik Language (CodeElement kaynağından devralındı.)
Genel özellik Language Kullanılan programlama dili alır Yazar CodeElement2.
Genel özellik Name (CodeElement kaynağından devralındı.)
Genel özellik Name Alır veya ayarlar CodeElement2 nesne.
Genel özellik ProjectItem (CodeElement kaynağından devralındı.)
Genel özellik ProjectItem Alır ProjectItem nesnesi ile ilişkili CodeElement nesne.
Genel özellik StartPoint (CodeElement kaynağından devralındı.)
Genel özellik StartPoint Alır bir TextPoint başına tanımlayan nesne CodeElement2.

Üst

Yöntemler

  Ad Açıklama
Genel yöntem GetEndPoint(vsCMPart) (CodeElement kaynağından devralındı.)
Genel yöntem GetEndPoint(vsCMPart) Alır bir TextPoint nesne sonuna işaretlerkod öğesi tanımı.
Genel yöntem GetStartPoint(vsCMPart) (CodeElement kaynağından devralındı.)
Genel yöntem GetStartPoint(vsCMPart) Alır bir TextPoint nesne başlangıcını işaretlerkod öğesi tanımı.
Genel yöntem RenameSymbol Bildirilen bir nesnenin adını değiştirir ve geçerli proje kapsamı içindeki tüm kod başvurular güncelleştirir.

Üst

Açıklamalar

Kod öğesi kod herhangi bir parçası olabilir, ancak genellikle sorun bir CodeElement2 nesne her tanım veya bildirime dayanan sözdiziminde dili. Bu en üst düzey tanımları veya bir dosyada bildirimleri için anlamına gelir veya sınıf tanımı ve benzeri sözdizimi herhangi form yok karşılık gelen CodeElement2 nesne.

Not

Sınıflar, yapılar, işlevleri, öznitelikleri, Temsilciler ve benzeri gibi kod modeli öğeleri değerlerini düzenlemeleri değerlerine bağlı her zaman aynı kalmasını dayanıyordu olamaz, diğer bir deyişle, belirli türde yaptıktan sonra non-deterministik olabilir. Daha fazla bilgi için bkz: kod modeli öğe değerlerini de değiştirebilirsiniz bölüm Kod modeli (@) kullanarak kodu keşfetme.

Örnekler

[Visual Basic]

Sub IsCodeTypeExample(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

[C#]

public void IsCodeTypeExample(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:" + 
        Environment.NewLine + Environment.NewLine + 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() + "]" + 
            Environment.NewLine);

        // 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);
    }
}

Ayrıca bkz.

Başvuru

EnvDTE80 Ad Alanı

Diğer Kaynaklar

Nasıl Yapılır: derlemek ve otomasyon nesne modeli kod örnekleri çalıştırma

Kod modeli (@) kullanarak kodu keşfetme

Kod modeli (Visual C#) kullanarak kodu keşfetme