Propriedade Reference3.ContainingProject
Obtém o Project que contém a referência.
Namespace: VSLangProj80
Assembly: VSLangProj80 (em VSLangProj80.dll)
Sintaxe
'Declaração
ReadOnly Property ContainingProject As Project
Get
Project ContainingProject { get; }
property Project^ ContainingProject {
Project^ get ();
}
abstract ContainingProject : Project
function get ContainingProject () : Project
Valor de propriedade
Tipo: EnvDTE.Project
A Project objeto que contém a referência.
Implementações
Comentários
Use esta propriedade para recuperar o Project objeto, que inclui a referência.
Exemplos
Este exemplo exibe o projeto contendo para todas as referências e também para cada referência separadamente em uma abertura Visual Basic ou Visual C# project. Para executar este exemplo como um suplemento, consulte Como: compilar e Executar a automação de exemplos de Código do modelo de objeto.
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;
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.