SolutionFolder Interface

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Solution folders are project containers that allow developers to better organize large applications.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

[GuidAttribute("F8F69788-267C-4408-8967-74F26108C438")]
public interface SolutionFolder

The SolutionFolder type exposes the following members.

  NameDescription
Public propertyDTEGets the top-level extensibility object.
Public propertyHiddenSets or gets the hidden attribute of the solution.
Public propertyParentGets the immediate parent object of a Find object.
Top

  NameDescription
Public methodAddFromFileAdds an existing project to the solution folder.
Public methodAddFromTemplateAdds a new project to the solution folder based on a project template.
Public methodAddSolutionFolderAdds a solution folder to a ProjectItems collection.
Top

In Visual Studio 2005, solutions can contain solution folders in addition to project folders. Solution folders are project containers that allow developers to better organize large applications.

The solution's Projects property returns a collection of Project objects. Each individual Project has a Kind property which can be set to vsProjectKindSolutionFolder. To get to the SolutionFolder interface, call Project.Object, and then cast the object returned to a SolutionFolder type.

This example creates a new solution folder and adds a project to it from an existing file. Before running this example, create a "Projects" folder off your main drive ("C:" in this example), and create a Visual C# class library project, named "ClassLibrary1" in that folder. You must also open a project in the Visual Studio integrated development environment (IDE) before running this add-in.

For more information about how to run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.

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;
    solnFolderAddFromFileExample(_applicationObject);
}
public void solnFolderAddFromFileExample(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.");
    }
    catch(SystemException ex)
    {
        MessageBox.Show(ex.ToString());
    }
}
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft