We recommend using Visual Studio 2017

InfoPath Solutions


Visual Studio provides project templates you can use to create VSTO Add-ins for Microsoft Office InfoPath 2013 and InfoPath 2010. InfoPath is not available in Office 2016.

System_CAPS_ICON_note.jpg Note

You can still create an VSTO Add-in for InfoPath even if you’ve installed Office 2016. Just install InfoPath 2013 or Office 2013 side-by-side with Office 2016.

Applies to: The information in this topic applies to VSTO add-in projects for InfoPath. For more information, see Features Available by Office Application and Project Type.

System_CAPS_ICON_note.jpg Note

Interested in developing solutions that extend the Office experience across multiple platforms? Check out the new Office Add-ins model. Office Add-ins have a small footprint compared to VSTO add-ins and solutions, and you can build them by using almost any web programming technology, such as HTML5, JavaScript, CSS3, and XML.

VSTO Add-ins for InfoPath are similar to VSTO Add-ins for other Microsoft Office applications. These types of solutions consist of an assembly that is loaded by the application. End users can have access to the functionality of this assembly no matter which form or form template is open. For more information about VSTO Add-ins, see Getting Started Programming VSTO Add-ins and Architecture of VSTO Add-ins.

System_CAPS_ICON_note.jpg Note

Visual Studio 2015 does not include the InfoPath form template projects that were provided in previous versions of Visual Studio. You also cannot use Visual Studio 2015 to open or edit an InfoPath form template project that was created in a previous version of Visual Studio. However, you can open and edit an InfoPath form template project by using Visual Studio Tools for Applications. For more information, see Working with VSTO 2008 Projects in InfoPath 2010..

To access the InfoPath object model from an Office VSTO Add-in created by using Office development tools in Visual Studio, use the Application field of the ThisAddIn class in your project. The Application field returns a T:Microsoft.Office.Interop.InfoPath.Application object that represents the current instance of InfoPath. For more information, see Programming VSTO Add-Ins.

When you call into the InfoPath object model from an VSTO Add-in, you use types that are provided in the primary interop assembly for InfoPath. The primary interop assembly acts as a bridge between the managed code in the VSTO Add-in and the COM object model in InfoPath. All types in the InfoPath primary interop assembly are defined in the N:Microsoft.Office.Interop.InfoPath namespace. For more information about the InfoPath primary interop assembly, see About the Microsoft Office InfoPath Primary Interop Assembly. For more information about primary interop assemblies in general, see Office Solutions Development Overview (VSTO) and Office Primary Interop Assemblies.

When you create an VSTO Add-in for InfoPath, you have several different UI customization options. The following table lists some of these options.

TaskFor more information
Create a custom task pane.Custom Task Panes
Add custom tabs to the Ribbon in InfoPath.Customizing a Ribbon for InfoPath

For more information about customizing the UI of InfoPath and other Microsoft Office applications, see Office UI Customization.

About the Microsoft Office InfoPath Primary Interop Assembly
Getting Started Programming VSTO Add-ins
Office Solutions Development Overview (VSTO)
Architecture of VSTO Add-ins
How to: Create Office Projects in Visual Studio
Programming VSTO Add-Ins
Writing Code in Office Solutions
Office Primary Interop Assemblies
Office UI Customization
InfoPath 2010 in Office Development