Compartilhar via


Solution2.AddIns Property

Gets an AddIns collection, which contains all currently available Add-ins associated with the solution.

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

Syntax

'Declaration
ReadOnly Property AddIns As AddIns
AddIns AddIns { get; }
property AddIns^ AddIns {
    AddIns^ get ();
}
abstract AddIns : AddIns with get
function get AddIns () : AddIns

Property Value

Type: EnvDTE.AddIns
An AddIns collection.

Remarks

Only registered Add-ins appear in the AddIns collection, and they load and unload when the solution loads and unloads.

Examples

For information on how to run this add-in code, see How to: Compile and Run the Automation Object Model Code Examples.

The following example counts the number of add-ins in an open solution.

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)
    SolutionAddInsExample(_applicationObject)
End Sub

Sub SolutionAddInsExample(ByVal dte As DTE2)
    ' This add-in counts the add-ins in a solution.
    ' Open a solution in Visual Studio before running this
    ' example.
    Try
        Dim soln As Solution2 = CType(_applicationObject.Solution, _
        Solution2)
        ' List the number of add-ins.
        MsgBox("Number of add-ins in" & soln.FullName & " is: " _
        & soln.AddIns.Count)
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
//you will need to add this reference to your project as well
using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    SolutionAddInsExample((DTE2)_applicationObject);
}
public void SolutionAddInsExample(DTE2 dte)
{
    // This add-in counts the add-ins in a solution.
    // Open a solution in Visual Studio before running this
    // example..
    try{
        Solution2 soln =(Solution2)_applicationObject.Solution;
        // List the number of Add-ins.
        MessageBox.Show("Number of add-ins in" + soln.FullName 
+ " is: " + "\n" + soln.AddIns.Count);
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

.NET Framework Security

See Also

Reference

Solution2 Interface

EnvDTE80 Namespace