Toolbox Controls Installer for Workflow Activities and VSIX


  • We are working on a CodePlex project and a Microsoft Visual Studio ALM Rangers Project to create custom build workflow activities that are a package for customers to use that fill a gap.  It’s similar to how the MSBuild Community Tasks are available to folks but these would be native workflow activities designed for TFS 2010 Build.


    Essentially we want to create a VSIX package that we can distribute on Visual Studio Gallery that contains custom workflow activities that work with TFS 2010 Build.  We want to configure the VSIX package to install each of the custom workflow activities in the assembly to the toolbox so that when someone opens a TFS 2010 Build process template (XAML) file in the workflow designer that it shows up in the toolbox.


    Workflow = Windows Workflow Foundation 4.0


    The VS SDK package has two great samples about getting WinForms and WPF custom controls added to the toolbox but there is no documentation on how to install workflow activities to the toolbox.  We would like to know what the magic is to get this added to the toolbox correctly.  There are some small changes to make it work for WPF controls so I’m guessing it is some small change for WF activities.  I just can’t seem to find a sample or documentation anywhere.


    We want them to show up on the Workflow Foundation Designer in the toolbox in our own custom tab.  If you open the "Add Items..." dialog, you will notice how Workflow Activities (System.Activities Components) are different from WPF components and other .NET Framework Components (like WinForms controls.)


    In the WPF Example, you’ll see that the attribute you apply creates a registry key in the Toolbox Controls Installer location in the hive and then supplies the “WpfControls” value in that key.  I bet there is something to tell it that it is a Workflow 4.0 activity and that’s all we will need to set.  Just curious what that is.  (FYI – If it’s a WinForms control then you actually don’t even set any special entry in the registry key.)


        /// <summary>
        /// This attribute adds a ToolboxControlsInstaller key for the assembly to install toolbox controls from the assembly
        /// </summary>
        /// <remarks>
        /// For example
        ///     [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
        ///         "Codebase"="$path$"
        ///         "WpfControls"="1"
        /// </remarks>


    Please let me know if you have any questions or if I’m just not looking in the right spot.  I hope I have provided enough information about what we are attempting to do.


    Thanks for any insight!

    Ed Blankenship
    Microsoft MVP (TFS, Visual Studio ALM, and Team System)

    Ed Squared Blog

    Tuesday, October 26, 2010 5:17 PM


  • Hi Ed--


    Unfortunately, workflow controls are not currently supported by the toolbox controls installer.  We're hoping to remedy this in a future version of VS.


    -Josh Stevens

    VS Shell team


    • Marked as answer by Ed Blankenship Wednesday, October 27, 2010 11:52 AM
    Tuesday, October 26, 2010 6:57 PM

All replies