Develop Office solutions

Applies to: yesVisual Studio noVisual Studio for Mac noVisual Studio Code

After you design a project by using the Office developer tools in Visual Studio and set up the project files, you can begin to concentrate on implementing the code and custom user interface (UI).

Applies to: The information in this topic applies to document-level projects and VSTO Add-in projects. See Features available by Office application and project type.


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.

Office solutions programming model

The Office object model exposes a variety of objects that you can program against. Whenever you program Office solutions by using managed code, you write code that uses types in the Office primary interop assemblies. In solutions you create by using the Office project templates in Visual Studio, you also write code directly against generated classes in your project. For more information, see Write code in Office solutions.

Program different types of Office solutions

The type of solution that you are creating determines which features you can use in your project. For example, you can add Windows Forms controls and extended Office controls (named host controls) to document-level customizations by dragging items from the Toolbox in Visual Studio at design time. However, if you are developing a VSTO Add-in, you can only add these sorts of controls to documents at run time, by writing code.

For more information about features that are specific to different types of solutions, see the following topics:

Title Description
Write code in Office solutions Describes different aspects of writing code in Office solutions.
Program VSTO Add-ins Provides an overview of the programming model of VSTO Add-ins and related programming tasks.
Program document-level customizations Provides an overview of the programming model of document-level customizations and related programming tasks.
Office UI customization Describes the different ways that you can customize the UI of Office applications by using VSTO Add-ins and document-level customizations.
Data in Office solutions Describes the different ways that you can work with data in Office solutions, such as binding data to controls and caching data in document-level customizations.
How AutoSave impacts Office solutions Describes adjustments you might need to make to Office Solutions when AutoSave is enabled.
Troubleshoot Office solutions Provides tips for solving common problems that you might encounter when creating Office solutions.
Threading support in Office Provides an overview of working with multiple threads in Office solutions.
Accessibility in Office projects Describes the accessibility features that are available in Office solutions.

See also