2 Integrating Windows Presentation Foundation and Windows Communication Foundation into Your Office...

44
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    222
  • download

    0

Transcript of 2 Integrating Windows Presentation Foundation and Windows Communication Foundation into Your Office...

2

Integrating Windows Presentation Foundation and Windows Communication Foundation into Your Office Business Applications

Tim HuckabyCEO, InterKnowlogyMicrosoft RD & MVP

Session Code: OFC304

4

5

About…InterKnowlogy (www.InterKnowlogy.com)● Tim Huckaby, CEO - ([email protected])

● Custom App Dev / Consulting / Software & Systems Engineering Firm headquartered in Carlsbad, CA

● Microsoft Gold Partner managed in SoCal and Redmond● Design, Architect, Build and Deploy enterprise class applications ● Industry Experts:

90% of the company is publishedMicrosoft .NET Application development since 2000!Microsoft .NET Smart Client pioneers / industry leadersInformation Worker Solutions (VSTO & SharePoint)Integration / Messaging, B2B / B2C, Wireless / Mobility Microsoft BizTalk, Web Services, Microsoft Active Directory, Security, SSO, Authorization, AuthenticationCutting Edge Solutions on emerging Microsoft technologiesLargest Client: Microsoft

6

Designing, Building and Deploying OBAs that leverage WPF and WCF

Demos: Document Solutions for Excel and Word Add-in Solutions in Outlook

Guidance on how to get immediately effective in VSTO, WPF and WCF

VSTO, WPF and WCF…Why?

Session Objectives And Agenda

Guidance on Where to Go Next…

7

Makes Office a valuable, first-class project type in Visual StudioEnables developers to create & extend Office Business ApplicationsEnables developers to leverage key Office UI features and support collaboration and workflowProvides Office developers with the benefits and advantages of the Visual Studio professional development environment Enables developers to leverage existing programming skillsDevelopers can leverage their company’s current investment inOffice 2003 Pro and new investment in 2007 Office system

VSTO is the Tool for Building OBAsVSTO enables developers to leverage Visual Studio and the Microsoft Office platform to build scalable line-of-business solutions in .NET based on Microsoft Office

8

Office Application Solutions (Add-In)

Document-Centric Solutions

Office Client Development With VSTO2 Common Application Models

OMMyCodeMyCode

OMMyCodeMyCode

MyMenu MyMenu

MyTaskPaneMyTaskPane

The Actions Pane

Document Actions task paneSpecific task pane available to document customizations (new in Word and Excel 2003+)

Actions PaneProgrammable object exposed by VSTO 2005 from Excel Workbook and Word Document classesFully encapsulates an implementation of Ismart DocumentProvides a Windows Forms-based programming model for accessing the Document Actions task pane

10

VSTO Excel And WPF

Tim HuckabyInterKnowlogy CEOMicrosoft RD & MVP

demo

11

What the heck is XAML?

Separates the front-end from the back-endSimple declarative programming language suitable for constructing and initializing .NET ObjectsUsually the most concise way to represent user interfaces (or other hierarchies of objects)Doesn’t need a compile to renderThe language that almost all WPF related tools emit

12

Outlook 2007 Form Regions New technology in Outlook 2007 for enhancing and replacing Outlook’s built-in formsAdjoining and Separate regions for both custom and built-in formsReplacement and Replace-all regions for custom formsForms Designer in Outlook Many new controls allow duplication of built-in forms; they are themed and support databindingCode behind form regions is implemented via COM add-in

13

VSTO Outlook And WPF

Tim HuckabyInterKnowlogy CEOMicrosoft RD & MVP

demo

What the Heck is WPF?…and why do we need it?

It’s .NET!All the goodness of Developer Productivity

Built on Top of Direct 3DConverted to 3D triangles, textures and other Direct3D objects & then rendered by hardwareBenefits of hardware acceleration & perf due to work being off-loaded to GPUs (unlike GDI based systems)Ensures the maximum benefit of new hardware and driversSoftware rendering pipeline as fallback

Declarative programmingBringing designers directly into application development

Ease of deploymentAllowing administrators to deploy and manage applications securely

15

VSTO Excel And WPFAdventureWorks VSTO excel with wpf user control

Tim HuckabyInterKnowlogy CEOMicrosoft RD & MVP

demo

16

What the Heck is WCF?Framework for connecting distributed applicationsPart of .NET 3.0Enables building SOA applicationsImplements WS-* standardsSingle API that supports the capabilities of:

.NET RemotingASP.NET Web ServicesEnterprise Services (COM+)MSMQ

Messaging subsystem at its coreSOAP messages

Does not necessarily mean XML/Text!

Interoperability with:Enterprise ServicesASMX / Web Services 1.0 servicesAny WS-* compliant web serviceMSMQ applications

17

VSTO Word, WCF and WPF

Tim HuckabyInterKnowlogy CEOMicrosoft RD & MVP

demo

18

Why WCF?Flexibility

You can change your mind about wire level communication protocols, security model, and many other facets without changing your source code

MaintainabilityOne API for all forms of remote communication, don’t need to learn multiple technology stacks

PowerAll the capabilities of other remoting APIs rolled into oneInteroperability and SOA enabled in ways the other technologies never considered

SimplicityOn par with other remoting technologies if you just need simple remote callsIncrementally more complex as you start to take advantage of more complex features

Features which the other technologies may not have

Gotchas, Tips & TricksTip: You are going to need more tools than just Visual Studio .NET when building WPF solutions:

Microsoft Expression BlendMicrosoft Expression Designer (or it’s competitor)XAML Pad or XAML Cruncher

Gotcha: when building a VSTO application DO NOT COMPILE IN BLEND – you will “hose” your design time. VSTO apps won’t run from Blend anyway…Tip: If you don’t have artistic talent, then don’t try to create WPF styles….there are plenty of WPF Style samples in XAML source on the web to “leverage”.Gotcha: if you are going to build outlook Add-Ins then use a VPC…or else you’ll be cleaning the registry from a zillion compiles.

Product Team BlogsEric Carter: .NET4Office http://blogs.msdn.com/eric_carter/Peter Torr: Office Development, Security, Randomness… http://blogs.msdn.com/ptorr/Eric Lippert: Fabulous Adventures in Coding http://blogs.msdn.com/EricLippert Paul Stubbs: Office Development with .NET http://blogs.msdn.com/pstubbs/VSTO Team Blog http://blogs.msdn.com/vsto/

Newsgroups

VSTOmicrosoft.public.vsnet.vstools.officeMSDN Forums: VSTO http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=16&SiteID=1

.

Additional Information

MSDN Developer Centers VS.NET and Office Development http://msdn.microsoft.com/vstudio/office/ Office Development http://msdn.microsoft.com/office

Hands-on Labs for VSTO 2005 http://www.microsoft.com/downloads/details.aspx?FamilyID=f2323aaf-fe87-4203-9ed8-72466566e105&displaylang=en

VSTO 2005 Web casts http://msdn.microsoft.com/office/understanding/vsto/multimedia/default.aspx

Resources

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

VSTO-related blogsVSTO-related Blog Search – http://search.live.com/macros/pstubbs/vsto Office Zealot Site – http://www.officezealot.com/VSTO/bloghome.aspx

For More Information

Visit the VSTO Developer Centerhttp://msdn.microsoft.com/office/tool/vsto/default.aspx

VSTO Help documentation on MSDNhttp://msdn2.microsoft.com/library/d2tx7z6d(en-us,vs.80).aspx

Office Object Model Reference

Excel Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb149081.aspx

Outlook Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb176619.aspx

PowerPoint Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb251394.aspx

Visio Automation Object Model Referencehttp://msdn.microsoft.com/en-us/library/aa730930.aspx

Word Object Model Referencehttp://msdn.microsoft.com/en-us/library/bb244515.aspx

SummaryVSTO is the key enabler for the .NET stack to build Office Business Applications● Connect documents to live business data● Provide structure using XML Schemas ● Provide deeper UI integration using the

Document Actions task pane● Integrated design-time experience● Developer productivity through

programming model enhancements● All the power of Visual Studio and the .NET FrameworkWPF and WCF are natural additions to your Enterprise Office Business Applications● Custom, Integrated, Professional-looking Uis within the Office Client

applications● Distributed Office Applications that are Flexible, Powerful, Simple &

Maintainable

Tim Huckaby, InterKnowlogy

More info on InterKnowlogy:www.InterKnowlogy.com

Contact me: Tim HuckabyE-mail: [email protected] [email protected]: 760-444-8640Blog: http://blogs.InterKnowlogy.com/TimHuckaby

About Tim HuckabyCEO, InterKnowlogyMicrosoft® Regional Director – Southern CaliforniaMicrosoft® .NET Partner Advisory Council Founder / MemberMicrosoft® MVP - .NETMicrosoft® Surface Partner Advisory CouncilINETA Speaker – International .NET Users Group AssociationWindows and .NET Magazine Advisory Board Member.NET Developers Journal Magazine Advisory Board MemberAuthor / Speaker

31

Video Title

video

32

Customer Title

NameTitleCompany

customer

33

Demo Title

NameTitleCompany

demo

claireh
NOTE TO SPEAKERS: Demo failure is the #1 cause of low scores. Increase speed and reliability by using the virtual demo. For detailed information, consult the Virtual Demo tab of the speaker portal (www.msteched.com).

34

Demo Title

NameTitleCompany

demopowered by

and

claireh
NOTE TO SPEAKERS: Use this slide if you are running your demo from MyVPC, Tech·Ed’s virtual hosting system. For detailed information, consult the Virtual Demo tab of the speaker portal (www.msteched.com).

35

Partner Title

NameTitleCompany

partner

36

Announcement Title

announcing

37

PowerPoint TemplateSubtitle color

Example of a slide with a subheadSet the slide title in “title case”Set subheads in “sentence case”Generally set subhead to 36pt or smaller so it will fit on a single lineThe subhead color is defined for this template but must be selected; In PowerPoint 2007, it is the fourth font color from the left

38

PowerPoint Guidelines

Font, size, and color for text have been formatted for you in the Slide MasterUse the color palette shown belowSee next slide for additional guidelinesHyperlink color: www.microsoft.com

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

Sample Fill

39

Slide for Showing Software Code

Use this layout to show software codeThe font is Consolas, a monospace fontThe slide doesn’t use bullets but levels can be indented using the “Increase List Level” icon on the Home menuTo use straight quotes " instead of smart quotes ”, do this:1.Click on the Office Button in the upper left corner2.At the bottom of the menu, choose PowerPoint Options3.From the left pane, select Proofing4.Click on the AutoCorrect Options button5.Select the AutoFormat As You Type tab, and deselect “Straight quotes” with “smart quotes”. Then Click OK.

40

Table Format

Table TitleColumn 1 Column 2 Column 3 Column 4 Column 5

41

Bar Chart Example

Category 1 Category 2 Category 3 Category 4

4.3

2.5

3.5

4.5

2.4

4.4

1.8

2.8

2 2

3

5

Chart Title

Series 1 Series 2 Series 3

42

Pie Chart Example

59%23%

10%9%

Chart Title

1st Qtr2nd Qtr3rd Qtr4th Qtr

43

Q & A

www.microsoft.com/teched Tech·Talks Tech·Ed BloggersLive Simulcasts Virtual Labs

http://microsoft.com/msdn

Developer’s Kit, Licenses, and MORE!

Resources for Developers

Related Content

Hands-on Labs (session codes and titles)

Interactive Theater Sessions (session codes and titles)

Hands-on Labs (session codes and titles)

Hands-on Labs (session codes and titles)

Resource 1

Resource 2

Resource 3

Resource 4

Track Resources

claireh
Place Holder

Complete anevaluation onCommNet andenter to win!

1 Year Subscription!

49

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED

OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.