Reference3.ContainingProject, propriété
Obtient le Project qui contient la référence.
Espace de noms : VSLangProj80
Assembly : VSLangProj80 (dans VSLangProj80.dll)
Syntaxe
'Déclaration
ReadOnly Property ContainingProject As Project
Get
Project ContainingProject { get; }
property Project^ ContainingProject {
Project^ get ();
}
abstract ContainingProject : Project
function get ContainingProject () : Project
Valeur de propriété
Type : EnvDTE.Project
Un objet Project contenant la référence.
Implémentations
Notes
Utilisez cette propriété pour récupérer l'objet Project qui inclut la référence.
Exemples
Cet exemple affiche le projet conteneur de toutes les références, ainsi que de chaque référence d'un projet Visual Basic ou Visual C# ouvert. Pour exécuter cet exemple comme un complément, consultez Comment : compiler et exécuter les exemples de code du modèle objet Automation.
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;
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.