Método SolutionFolder.AddSolutionFolder
Adiciona uma pasta de solução para um ProjectItems coleção.
Namespace: EnvDTE80
Assembly: EnvDTE80 (em EnvDTE80.dll)
Sintaxe
'Declaração
Function AddSolutionFolder ( _
Name As String _
) As Project
Project AddSolutionFolder(
string Name
)
Project^ AddSolutionFolder(
String^ Name
)
abstract AddSolutionFolder :
Name:string -> Project
function AddSolutionFolder(
Name : String
) : Project
Parâmetros
- Name
Tipo: System.String
O nome da pasta de solução.
Valor de retorno
Tipo: EnvDTE.Project
A Project object.
Comentários
AddSolutionFolderRetorna um Project o objeto que você pode ser a interface cast ou consulta (QI) para um SolutionFolder objeto.
Exemplos
Este exemplo cria uma nova pasta de solução e adiciona um projeto de um arquivo existente.Ele também adiciona uma nova pasta de solução aninhado ao primeiro, usando o AddSolutionFolder método.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.Abra um projeto no ambiente de desenvolvimento integrado (IDE) Visual Studio 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)
solnFolderAddSolutionFolderExample(_applicationObject)
End Sub
Sub solnFolderAddSolutionFolderExample(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.")
SF.AddSolutionFolder("New solnFolder2")
MsgBox("Added a new solution folder, called 'New solnFolder2'.")
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;
solnFolderAddSolutionFolderExample(_applicationObject);
}
public void solnFolderAddSolutionFolderExample(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;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
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.");
SF.AddSolutionFolder("New solnFolder2");
MessageBox.Show("Added a new solution folder,
called 'New solnFolder2'.");
}
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.