Propriedade SolutionFolder.Parent
Obtém o objeto pai imediato de um Find objeto.
Namespace: EnvDTE80
Assembly: EnvDTE80 (em EnvDTE80.dll)
Sintaxe
'Declaração
ReadOnly Property Parent As Project
Project Parent { get; }
property Project^ Parent {
Project^ get ();
}
abstract Parent : Project
function get Parent () : Project
Valor de propriedade
Tipo: EnvDTE.Project
A DTE object.
Comentários
O Parent propriedade retorna o pai imediato para o Find objeto.
Exemplos
Este exemplo cria uma nova pasta de solução e adiciona um projeto de um arquivo existente.Em seguida, usa uma caixa de mensagem para exibir todos os itens de projeto na pasta da solução, obtida por meio do Parent objeto.Antes de executar este exemplo, crie uma pasta de "Projetos" Desativar a unidade principal ("c:" neste exemplo) e criar um Visual C# projeto de biblioteca de classe, denominado "ClassLibrary1" nessa pasta.Você precisará também abrir um projeto na Visual Studio o ambiente de desenvolvimento integrado (IDE) antes de executar este suplemento.
Para obter mais informações sobre como executar este exemplo como um add-in, consulte Como: compilar e executar os exemplos de código de modelo de objeto de automação.
Imports EnvDTE
Imports EnvDTE80
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)
solnFolderParentExample(_applicationObject)
End Sub
Sub solnFolderParentExample(ByVal dte As DTE2)
' Before running this example, create a "Projects" folder
' off your main drive (C: in this example), and create a C#
' class library project, named ClassLibrary1 in that folder.
Dim soln As Solution2 = CType(_applicationObject.Solution _
, Solution2)
Dim prj As Project
Dim sb As New System.Text.StringBuilder
Dim SF As SolutionFolder
Try
Dim prjPath As String = _
"C:\Projects\ClassLibrary1\ClassLibrary1\ClassLibrary1.csproj"
' Open a project in the Visual Studio IDE before
' running this add-in.
' Add a solution folder.
prj = soln.AddSolutionFolder("A new soln folder")
SF = CType(prj.Object, SolutionFolder)
' Add a project to the new solution folder.
SF.AddFromFile(prjPath)
MsgBox("Added a new solution folder that contains a _
C# project named ClassLibrary1.")
MsgBox("The name of the solution folder parent is: " _
& SF.Parent.Name)
Dim tempStr As String
tempStr = ""
For Each temp As ProjectItem In SF.Parent.ProjectItems
tempStr = tempStr & temp.Name & vbCr
Next
MsgBox("The names of the project items in the solution _
folder SF are:" & vbCr & tempStr)
Catch ex As System.Exception
MsgBox(ex.ToString)
End Try
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application,
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
solnFolderParentExample(_applicationObject);
}
public void solnFolderParentExample(DTE2 dte)
{
// Before running this example, create a "Projects" folder
// off your main drive (C: in this example), and create a C#
// class library project, named ClassLibrary1 in that folder.
Solution2 soln = (Solution2)_applicationObject.Solution;
Project prj;
SolutionFolder SF;
try
{
String prjPath =
"C:\\Projects\\ClassLibrary1\\ClassLibrary1\\ClassLibrary1.csproj";
// Open a project in the Visual Studio IDE before
// running this add-in.
// Add a solution folder.
prj = soln.AddSolutionFolder("A new soln folder");
SF = (SolutionFolder)prj.Object;
// Add a project to the new solution folder.
SF.AddFromFile(prjPath);
MessageBox.Show("Added a new solution folder that contains a
C# project named ClassLibrary1.");
MessageBox.Show("The name of the solution folder parent is: "
+ SF.Parent.Name);
String tempStr = null;
foreach(ProjectItem temp in SF.Parent.ProjectItems)
{
tempStr = tempStr + temp.Name + "\n";
}
MessageBox.Show("The names of the project items in the
solution folder SF are:" + "\n" + tempStr);
}
catch(SystemException ex)
{
MessageBox.Show(ex.ToString());
}
}
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.