次の方法で共有


Project.CodeModel Property

Definition

Gets the CodeModel object for the project.

public:
 property EnvDTE::CodeModel ^ CodeModel { EnvDTE::CodeModel ^ get(); };
public:
 property EnvDTE::CodeModel ^ CodeModel { EnvDTE::CodeModel ^ get(); };
[System.Runtime.InteropServices.DispId(217)]
public EnvDTE.CodeModel CodeModel { [System.Runtime.InteropServices.DispId(217)] get; }
[<System.Runtime.InteropServices.DispId(217)>]
[<get: System.Runtime.InteropServices.DispId(217)>]
member this.CodeModel : EnvDTE.CodeModel
Public ReadOnly Property CodeModel As CodeModel

Property Value

A CodeModel object.

Attributes

Examples

Public Sub CodeExample(ByVal dte As DTE2)   
    Try  
        ' Open a project before running this sample.  
        Dim prj As Project = dte.Solution.Projects.Item(1)  
        Dim prjs As Projects  
        Dim msg2 As String = "Global Variables:"  
        Dim msg As String  
        msg = "FileName: " + prj.FileName  
        msg += vbCrLf + "FullName: " + prj.FullName  
        msg += vbCrLf + "Project-level access to " + prj.CodeModel.CodeElements.Count.ToString() + " CodeElements through the CodeModel"  
        prjs = prj.Collection  
        msg += vbCrLf + "There are " + prjs.Count.ToString() + " projects in the same collection."  
        msg += vbCrLf + "Application containing this project: " + prj.DTE.Name  
        If prj.Saved Then  
            msg += vbCrLf + "This project has not been modified since the last save."  
        Else  
            msg += vbCrLf + "This project has been modified since the last save."  
        End If  
        msg +=  vbCrLf + "Properties:"  
        Dim prop As [Property]  
        For Each prop In  prj.Properties  
            msg += vbCrLf + "  " + prop.Name  
        Next prop  
        Dim s As String  
        For Each s In  CType(prj.Globals.VariableNames, Array)  
            msg2 += vbCrLf + "  " + s  
        Next s  

        MessageBox.Show(msg, "Project Name: " + prj.Name)  
        MessageBox.Show(msg2)  
    Catch ex As Exception  
        MessageBox.Show(ex.Message)  
    End Try  
End Sub  
public void CodeExample(DTE2 dte)  
{    
    try  
    {   // Open a project before running this sample.  
        Project prj = dte.Solution.Projects.Item(1);  
        Projects prjs;  
        string msg, msg2 = "Global Variables:";  
        msg = "FileName: " + prj.FileName;  
        msg += "\nFullName: " + prj.FullName;  
        msg += "\nProject-level access to " + prj.CodeModel.CodeElements.Count.ToString() +  
            " CodeElements through the CodeModel";  
        prjs = prj.Collection;  
        msg += "\nThere are " + prjs.Count.ToString() + " projects in the same collection.";  
        msg += "\nApplication containing this project: " + prj.DTE.Name;  
        if (prj.Saved)  
            msg += "\nThis project hasn't been modified since the last save.";  
        else  
            msg += "\nThis project has been modified since the last save.";  
        msg += "\nProperties: ";  
        foreach (Property prop in prj.Properties)  
        {  
            msg += "\n  " + prop.Name;  
        }  
        foreach (String s in (Array)prj.Globals.VariableNames)  
        {  
            msg2 += "\n  " + s;  
        }  

        MessageBox.Show(msg, "Project Name: " + prj.Name);  
        MessageBox.Show(msg2);  
    }  
    catch(Exception ex)  
    {  
        MessageBox.Show(ex.Message);  
    }  
}  

Remarks

The CodeModel object gives you project-level access to code elements or definitions in source files.

Applies to