Freigeben über


Reference3.ContainingProject-Eigenschaft

Ruft das Project-Objekt ab, das den Verweis enthält.

Namespace:  VSLangProj80
Assembly:  VSLangProj80 (in VSLangProj80.dll)

Syntax

'Declaration
ReadOnly Property ContainingProject As Project
    Get
Project ContainingProject { get; }
property Project^ ContainingProject {
    Project^ get ();
}
abstract ContainingProject : Project
function get ContainingProject () : Project

Eigenschaftswert

Typ: EnvDTE.Project
Ein Project-Objekt, das den Verweis enthält.

Implementiert

Reference2.ContainingProject

Hinweise

Rufen Sie mit dieser Eigenschaft das Project-Objekt ab, in dem der Verweis enthalten ist.

Beispiele

In diesem Beispiel wird das enthaltende Projekt für alle Verweise sowie für jeden einzelnen Verweis in einem geöffneten Visual Basic- oder Visual C#-Projekt getrennt angezeigt. Um dieses Beispiel als Add-In auszuführen, informieren Sie sich unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.

Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    TestGetProjectName(applicationObject)
End Sub
Sub TestGetProjectName(ByVal dte As DTE2)
    ' First project is a Visual Basic or C# project.
    Dim theVSProject As VSProject2 = _
    CType(applicationObject.Solution.Projects.Item(1)._
    Object, VSProject2)
    Dim refs As References = theVSProject.References
    MsgBox("The containing project for all references is : " _
    & GetProjectName(refs))
    Dim aRef As Reference3
    Dim refStr As String
    refStr = ""
    For Each aRef In theVSProject.References
        refStr &= (aRef.Name & "'s containing project is: " _
        & aRef.ContainingProject.Name & vbCr)
    Next
    MsgBox("The containing project for each reference in the project:" _
    & vbCr & vbCr & refStr & vbCr)
End Sub
Private Function GetProjectName(ByVal refs As References) _
    As String
    Return refs.ContainingProject.Name
End Function
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    TestGetProjectName(((DTE2)applicationObject));
}
public void TestGetProjectName(DTE2 dte)
{
    // First project is a Visual Basic or C# project.
    VSProject2 theVSProject = 
((VSProject2)(applicationObject.Solution.Projects.Item(1).Object));
    References refs = theVSProject.References;
    MessageBox.Show("The containing project for all references is : " 
+ GetProjectName(refs));
    Reference aRef = null;
    string refStr = null;
    refStr = "";
    foreach (VSLangProj80.Reference3 temp in theVSProject.References)
    {
        aRef = temp;
        refStr += (aRef.Name + "'s containing project is: " 
+ aRef.ContainingProject.Name + "\n");
    }
    MessageBox.Show("The containing project for each reference in 
the project:" + "\n" + "\n" + refStr + "\n");
}

private string GetProjectName(References refs)
{
    return refs.ContainingProject.Name;
}

.NET Framework-Sicherheit

Siehe auch

Referenz

Reference3 Schnittstelle

ContainingProject-Überladung

VSLangProj80-Namespace