Office as a development platform with visual studio 2008
Download
1 / 44

- PowerPoint PPT Presentation


  • 246 Views
  • Uploaded on

Office as a development platform with Visual Studio 2008 . Daniel Moth Developer and Platform Group Microsoft http://www.danielmoth.com/Blog. AGENDA. VSTO Overview Office Ribbon Designer Custom Task Pane Action Pane Outlook Form Region Designer Word Content Controls

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '' - Mercy


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Office as a development platform with visual studio 2008 l.jpg

Office as a development platform with Visual Studio 2008

Daniel Moth

Developer and Platform Group

Microsoft

http://www.danielmoth.com/Blog


Agenda l.jpg
AGENDA

  • VSTO Overview

  • Office Ribbon Designer

  • Custom Task Pane

  • Action Pane

  • Outlook Form Region Designer

  • Word Content Controls

  • VBA <-> VSTO interop

  • ClickOnce Deployment


Roadmap l.jpg
Roadmap

v3.0 (in VS2008)

  • Workflow & Microsoft SharePoint support

  • Office 2007 system-specific features, file format, UI

  • App-level add-ins for more client applications

  • Deeper server-side programming

  • VSTO fully integrated into Visual Studio 2008

2005 SE

  • App-level add-ins for most popular Office apps

  • Runtime support for key Office 2007 UI elements (Custom Taskpane, Ribbon, Outlook form regions)

  • Runtime support enabling Office 2003 doc-level customizations to run in Office 2007

2003

2003

2007

2007

2005

  • Custom Document ActionsPane

  • Host Controls on document surface

  • Cached data in the document

  • Server-side data processing

  • Application-level add-ins for Outlook


Vsto functionality over time l.jpg
VSTO Functionality Over Time

  • SP Workflow,

  • new designers,

  • functional extensions

  • infra investments

  • 11 Office add-ins,

  • infra investments

  • Outlook add-ins,

  • VSTA in InfoPath

  • functional extensions

  • infra investments

  • Doc-level


Doc level version resilience l.jpg
Doc-Level Version Resilience

  • v1 solutions use the VSTO v1 runtime

  • v2 solutions use the VSTO v2 runtime

  • v3+ solutions use the VSTO v3+ runtime

    • Reduces the number of runtimes (improves performance, working set)

    • Eliminates type name clashes in DefaultDomain

  • Based on the Managed Add-in Framework

  • Common VSTO/VSTA runtime



Fluent ui l.jpg

“Fluent” UI

Ribbon,

Custom Task Panes, Actions Pane,

Form Region


Office ribbon l.jpg
Office Ribbon

  • New Look and Feel for Office UI

  • Replaces Command Bars in “the big 5” Office apps

  • Introduces a new extensibility model: RibbonX

  • Enables you to

    • Customize office tabs, Add to built-in tabs

    • Remove tabs, groups and controls

    • Add to Office menu, Override built-in UI

Group

Tab

Control

Ribbon


Xml based customisation support l.jpg
XML-based Customisation Support

Ribbon XML structure requires a specific hierarchy

For example:

<customUIxmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="OnLoad">

<ribbon>

<tabs>

<tab idMso="TabAddIns">

<group id="MyGroup"

label="My Group">

<toggleButton id="toggleButton1"

size="large"

label="My Button"

screentip="My Button Screentip"

onAction="OnToggleButton1"

imageMso="AccessFormModalDialog" />

</group>

</tab>

</tabs>

</ribbon>

</customUI>


Ribbon customization l.jpg
Ribbon Customization

  • Office built-in support for XML-based customization model

  • VSTO 2005 SE support

    • Simplifies hookup from .NET via pre-generated classes and sample XML

  • VSTO v3.0 (Visual Studio 2008) support

    • Adds full-blown visual designer support

    • “Export to XML” option

    • A more robust programming layer inc. events


Ribbon designer l.jpg

Design Surface

Ribbon Designer

Property Grid

Ribbon Control

Toolbox


Custom task actions panes l.jpg
Custom Task & Actions Panes

  • VSTO simplifies and speeds up task pane UI design process with visual designers and .NET hookup

    • Actions Pane

      • More robust, easier to program alternative to Office’s built-in “Smart Document” technology

    • Custom Task Pane

      • The same general idea as Actions Pane, only on the application add-in level, not individual doc




Actionspane architecture l.jpg
ActionsPane Architecture

WinForms UserControl (ActionsPane)

VSTO Invisible ActiveX Control

Document Actions Task Pane


Outlook form region features l.jpg
Outlook Form Region Features

  • New technology in Outlook 2007 for enhancing and replacing Outlook’s built-in forms

  • Code behind form region is implemented as COM add-in

  • New controls provide built-in look & feel and data binding to Outlook data


4 types of form regions l.jpg
4 Types of Form Regions

  • Adjoining and Separate

    • Custom and built-in forms

  • Replacement and Replace-all

    • Custom forms only

  • Reading Pane can display all types except Separate






Vs2008 outlook form region s l.jpg
VS2008 Outlook Form Regions

  • VSTO eases development of Outlook form regions

    • Configure form region with a simple, intuitive wizard

    • Debugging (F5), Intellisense

  • Import

    • Use wizard to import Outlook-created OFS file

    • Controls are referenced & cast to correct name & type

  • Design

    • Designer supports WPF and Windows Form controls

    • Properties window exposes manifest




Slide26 l.jpg

Word

Content Controls


Word content controls l.jpg
Word Content Controls

  • New experience for developing structured documents in Word 2007

  • New UI for developers to access Word Content Controls

  • Programmable through Word Object Model

  • Support for XML Mapping


Toolbox support l.jpg
Toolbox Support

  • Word content controls available in Toolbox

  • Increases discoverability of content controls

  • Drag-and-drop experience


Property grid support l.jpg
Property Grid Support

  • Easily access the properties and events of the content controls


Programming paradigm l.jpg
Programming Paradigm

  • Windows Forms style programming model

    • Generate event handlers

    • Support for IntelliSense



Two way simple data binding l.jpg
Two-Way Simple Data Binding

  • Two methods to data bind

    • Drag and drop support from Data Sources window

    • Set up through the property grid



Where we ve been what s left l.jpg
Where we’ve been, what’s left

  • VSTO Overview

  • Office Ribbon Designer

  • Custom Task Pane

  • Action Pane

  • Outlook Form Region Designer

  • Word Content Controls

  • VBA <-> VSTO interop

  • ClickOnce Deployment


Call vsto from vba l.jpg

You enable VBA via COM Interop

Interop implemented at design time

You can then call VSTO from VBA with IntelliSense after building the project

Call VSTO from VBA



Clickonce for office add ins l.jpg
ClickOnce for Office Add-ins

  • Low-impact deployment mechanism

    • Self-contained

    • Solutions installed per user

  • Prerequisites are installed if the user is an admin

  • ClickOnce support

    • Full end-to-end solution installation

    • Richer version-independent security model

    • Offline access via the ClickOnce Cache



Summary l.jpg
Summary

  • The rationale for the VSTO architecture

    • Bring together Office and .NET

    • Provide a sophisticated developer experience

    • Provide a solid baseline runtime infrastructure

  • Office is a true development platform


Msdn in the uk l.jpg
MSDN in the UK

  • Visit http://msdn.co.uk

    • Newsletter

    • Events

    • Screencasts

    • Blogs


Resources l.jpg
Resources

  • Visit the VSTO Developer Center

    http://msdn.microsoft.com/office/tool/vsto/default.aspx

  • VSTO Help documentation on MSDN

    http://msdn2.microsoft.com/en-gb/library/d2tx7z6d(vs.90).aspx

  • VSTO Forum

    http://forums.microsoft.com/msdn/ShowForum.aspx?ForumID=16

  • VSTO Team Blog

    http://blogs.msdn.com/vsto2


Vsto design time stack l.jpg
VSTO Design-Time Stack

Excel, Word, Info Path

Info Path

Excel,

InfoPath,

Outlook,

PowerPoint, Visio, Word, Project

Excel,

Outlook,

PowerPoint, Word

SharePoint

IDE Hosting

Separate IDE

Outlook

Workflow

Document

Solutions

Add-ins

Ribbons

Form Regions

Project Templates

Item Wizards

Visual Studio


Vsto a runtime stack l.jpg
VSTO/A Runtime Stack

Office Client Host

Managed/

Unmanaged Host

Doc-Level Solution

App-Level Add-in

Doc-Level Solution

App-Level

Add-in

VSTO Runtime

VSTA Integration

Doc Task Pane

Host Item

Controls

Win Forms

Controls

Custom Ribbon

Custom Task Pane

Custom Form Region

Common VSTO/A

Runtime

AppDomain Management

Security Enforcement

Deployment and Updating

.NET CLR

Managed Add-in Framework (MAF)

ClickOnce


ad