Reference3.ContainingProject プロパティ
参照を含む Project を取得します。
名前空間: VSLangProj80
アセンブリ: VSLangProj80 (VSLangProj80.dll 内)
構文
'宣言
ReadOnly Property ContainingProject As Project
Project ContainingProject { get; }
property Project^ ContainingProject {
Project^ get ();
}
abstract ContainingProject : Project
function get ContainingProject () : Project
プロパティ値
型 : EnvDTE.Project
参照を含む Project オブジェクト。
解説
参照を含む Project オブジェクトを取得するには、このプロパティを使用します。
例
この例では、すべての参照を含むプロジェクトを表示します。また、各参照は、開いた Visual Basic または Visual C# プロジェクトごとに表示します。このサンプル コードをアドインとして実行するには、「方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する」を参照してください。
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 セキュリティ
- 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。