Reference3.SourceProject – vlastnost
Získá Project objektu, pokud je odkaz na projekt.Funkce Nothing (objekt s hodnotou null).
Obor názvů: VSLangProj80
Sestavení: VSLangProj80 (v VSLangProj80.dll)
Syntaxe
'Deklarace
ReadOnly Property SourceProject As Project
Project SourceProject { get; }
property Project^ SourceProject {
Project^ get ();
}
abstract SourceProject : Project with get
function get SourceProject () : Project
Hodnota vlastnosti
Typ: Project
Vrátí Project objektu.
Poznámky
Pro jeden projekt použít objekty, které jsou postaveny tak, že druhý projekt první projekt musí obsahovat odkaz na druhý projekt.V takovém případě SourceProject vlastnost může vrátit Project objekt pro druhý projekt.
Příklady
Tento příklad prochází všechny odkazy a zobrazí název SourceProject, pokud existuje.Chcete-li spustit tento příklad jako doplněk, viz Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.Otevřené Visual Basic nebo Visual C# projektu před spuštěním v tomto příkladu.
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)
DisplaySourceProjectName(applicationObject)
End Sub
Public Sub DisplaySourceProjectName(ByVal dte As DTE2)
' The first project is a Visual Basic or C# project.
Dim vsProject As VSProject2 =_
CType(applicationObject.Solution.Projects.Item(1).Object, _
VSProject2)
Dim aRef As Reference3
Dim refStr As String
refStr = ""
Dim project As EnvDTE.Project
For Each aRef In vsProject.References
project = aRef.SourceProject
If project Is Nothing Then
refStr += (aRef.Name & " has no source project." & vbCr _
& vbCr)
Else
refStr += (aRef.Name & " has a source project named " _
& project.Name & vbCr & vbCr)
End If
Next
MsgBox(refStr)
End Sub
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;
DisplaySourceProjectName(((DTE2)applicationObject));
}
public void DisplaySourceProjectName(DTE2 dte)
{
// The first project is a Visual Basic or C# project.
VSProject2 aProject =
((VSProject2)(applicationObject.Solution.Projects.Item(1).Object));
Reference3 aRef = null;
string refStr = null;
refStr = "";
EnvDTE.Project project = null;
foreach (VSLangProj80.Reference3 temp in aProject.References)
{
aRef = temp;
project = aRef.SourceProject;
if (project == null)
{
refStr += (aRef.Name + " has no source project." + "\n"
+ "\n");
}
else
{
refStr += (aRef.Name + " has a source project named "
+ project.Name + "\n" + "\n");
}
}
MessageBox.Show(refStr);
}
Zabezpečení rozhraní .NET Framework
- Plná důvěra přímému volajícímu. Částečně zabezpečený kód nemůže tento člen použít. Další informace naleznete v tématu Používání knihoven z částečně důvěryhodného kódu.