smart client development using visual studio tools for office and windows mobile todd apley software...
TRANSCRIPT
![Page 1: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/1.jpg)
Smart Client Development Using Visual Studio Tools for Office and Windows Mobile
Smart Client Development Using Visual Studio Tools for Office and Windows Mobile
Todd ApleyTodd ApleySoftware Design Eng/Test LeadSoftware Design Eng/Test [email protected]@microsoft.com
![Page 2: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/2.jpg)
AgendaAgenda
Understanding Smart ClientsUnderstanding Smart Clients
Building Smart Clients Using OfficeBuilding Smart Clients Using Office
Building Smart Clients for Mobile Building Smart Clients for Mobile DevicesDevices
![Page 3: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/3.jpg)
Smart clients are easily deployed and managed client applications Smart clients are easily deployed and managed client applications that provide an adaptive and interactive experience by leveragingthat provide an adaptive and interactive experience by leveraging
local resources and intelligently connecting to distributed data sources. local resources and intelligently connecting to distributed data sources.
Web Services &Offline/Online
support
DeviceAdaptability
Tough toDeploy
HeavyFootprint
DLL Hell
NetworkDependency
Poor UserExperience
Rich UIComplex
To Develop
Rich UserExperience
DeveloperProductivity
Responsive
BroadReach
Easy ChangeManagement
Ease ofDeployment
![Page 4: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/4.jpg)
Incr
easi
ng
Pro
du
ctiv
ity
Incr
easi
ng
Pro
du
ctiv
ity
![Page 5: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/5.jpg)
AgendaAgenda
Understanding Smart ClientsUnderstanding Smart Clients
Building Smart Clients Using OfficeBuilding Smart Clients Using Office
Building Smart Clients for Mobile Building Smart Clients for Mobile DevicesDevices
![Page 6: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/6.jpg)
Bedrock of features to leverageBedrock of features to leverageRich user experience provided by Office applicationsRich user experience provided by Office applications
XML schemas provide custom business structureXML schemas provide custom business structure
Actions task pane and Smart Tags enable contextual UIsActions task pane and Smart Tags enable contextual UIs
Online / Offline capableOnline / Offline capable
Broadly used by knowledge workers Broadly used by knowledge workers Familiar authoring and formatting of business documentsFamiliar authoring and formatting of business documents
Analysis and calculation of business dataAnalysis and calculation of business data
Information sharing and collaborationInformation sharing and collaboration
Capitalize on the benefits of the Office platformCapitalize on the benefits of the Office platformPower of Office platform investmentsPower of Office platform investments
Improved end-user productivity and reduced data errorsImproved end-user productivity and reduced data errors
Substantially reduce end-user training costs Substantially reduce end-user training costs
Smart Clients on Office
![Page 7: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/7.jpg)
Microsoft’s strategic tool for Microsoft’s strategic tool for developing Office solutions:developing Office solutions:
Microsoft Excel 2003*Microsoft Excel 2003*
Microsoft Word 2003*Microsoft Word 2003*
Microsoft InfoPath 2003Microsoft InfoPath 2003
Microsoft Outlook 2003 Add-in SupportMicrosoft Outlook 2003 Add-in Support
Targeted at the professional developerTargeted at the professional developerVisual Basic 2005Visual Basic 2005
Visual C#Visual C#
Visual Studio 2005 Tools for the Microsoft Office System (VSTO)
* Microsoft Office System Professional Edition * Microsoft Office System Professional Edition or Excel 2003 or Word 2003 standalone versionsor Excel 2003 or Word 2003 standalone versions
![Page 8: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/8.jpg)
![Page 9: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/9.jpg)
Reasons for using VSTO vs. VBAReasons for using VSTO vs. VBA
VBA* is a 1990’s TechnologyVBA* is a 1990’s TechnologySubset syntax = limited functionality & flexibilitySubset syntax = limited functionality & flexibilityCode in document = no source code/version controlCode in document = no source code/version controlCasual security model = high potential security riskCasual security model = high potential security riskAccess to limited controls within Office applicationsAccess to limited controls within Office applications
Visual Studio Tools for Office Visual Studio Tools for Office is 100% .NETis 100% .NET
Complete syntax (Professional languages)Complete syntax (Professional languages)Choice of Visual Basic .NET or C#Choice of Visual Basic .NET or C#
Code Behind = mainstream source code controlCode Behind = mainstream source code control““Publish” deployment for easier version controlPublish” deployment for easier version control.NET Security model = robust security enforced.NET Security model = robust security enforcedComplete access to managed controlsComplete access to managed controls
* There are no pending plans to retire VBA at this time
![Page 10: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/10.jpg)
Major focus on dev. productivityMajor focus on dev. productivityIntegrated design-time experienceIntegrated design-time experience(Excel & Word right in the IDE)(Excel & Word right in the IDE)
Full access to the .NET Framework, Web Full access to the .NET Framework, Web services, ADO .NET, integrated debuggingservices, ADO .NET, integrated debuggingSupport for managed controls Support for managed controls (MS and third-party)(MS and third-party)
First class “Hosted” controlsFirst class “Hosted” controls
Managed Document Actions Pane & Smart Managed Document Actions Pane & Smart TagsTags
Schema-based programming modelSchema-based programming model
CLR-based security model CLR-based security model
New data caching capabilitiesNew data caching capabilities
Data island accessible in a server environmentData island accessible in a server environment
Improved online publish deployment modelImproved online publish deployment model
![Page 11: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/11.jpg)
Excel/Word Designers
HostedControls
Windows Forms controls
PublishDeployment
Visual Studio 2005 Tools for OfficeIntegrated Design-time Experience
Visual Studio 2005 Tools for OfficeIntegrated Design-time Experience
![Page 12: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/12.jpg)
Visual Studio 2005 Tools for Office Schema-Based Programming ModelVisual Studio 2005 Tools for Office Schema-Based Programming Model
Direct programmatic access to XML Direct programmatic access to XML NodesNodes
XMLNode instances created for each XMLNode instances created for each schema elementschema element
Access XmlNode instances, instead of UI Access XmlNode instances, instead of UI elementselements
Data binding supportData binding support
Event modelEvent modelContextEnter/ContextLeaveContextEnter/ContextLeave
AfterInsert/BeforeDeleteAfterInsert/BeforeDelete
BidRequestRequestDateNode.Text = NowBidRequestRequestDateNode.Text = Now
![Page 13: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/13.jpg)
Managed ControlsWindows Forms ControlsManaged ControlsWindows Forms Controls
Managed Windows Forms Controls Managed Windows Forms Controls are availableare available
On the document or worksheet surfaceOn the document or worksheet surface
On a Windows FormOn a Windows Form
On the Actions PaneOn the Actions Pane
Simply drag-drop from the Simply drag-drop from the Toolbox onto the designer surface Toolbox onto the designer surface of your choiceof your choice
May be dynamically May be dynamically added/removed at runtimeadded/removed at runtime
Third-party/Custom .NET user Third-party/Custom .NET user controls supportedcontrols supported
![Page 14: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/14.jpg)
Actions PaneContext-based display of information Actions PaneContext-based display of information
![Page 15: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/15.jpg)
Actions PaneAn OverviewActions PaneAn Overview
Simplifies the developer experienceSimplifies the developer experience
Simplified object modelSimplified object model
Eliminates the need for XML Eliminates the need for XML expansion packs and XML mappingsexpansion packs and XML mappings
Provides support for managed Provides support for managed controlscontrols
Actions panes are an enhancement to the Smart Document feature introduced in
Office 2003.
![Page 16: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/16.jpg)
Visual Studio 2005 Tools for Office Managed Document Actions Task Pane
Visual Studio 2005 Tools for Office Managed Document Actions Task PaneLayout UI with Windows Forms Designer Layout UI with Windows Forms Designer
(UserControls)(UserControls)
Add to document with a single line of code!Add to document with a single line of code!
ISmartDocument implementation provided ISmartDocument implementation provided under the coversunder the covers
Does not require mapping of XML SchemaDoes not require mapping of XML Schema
Dim ctrl as new MyUserControl()Dim ctrl as new MyUserControl()
ActionsPane.Controls.Add(ctrl)ActionsPane.Controls.Add(ctrl)
![Page 17: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/17.jpg)
Microsoft Word Real Estate OfferMicrosoft Word Real Estate Offer
![Page 18: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/18.jpg)
Motivations for Enabling Outlook Extensibility in VSTOMotivations for Enabling Outlook Extensibility in VSTO
A lot of people “live” in OutlookA lot of people “live” in Outlook
Email and tasks part of typical Email and tasks part of typical business process and document business process and document workflowworkflow
Desire for single interface for multiple Desire for single interface for multiple back-end systemsback-end systems
Reduced training and expanded Reduced training and expanded access as a result of familiar Office UIaccess as a result of familiar Office UI
![Page 19: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/19.jpg)
Visual Studio 2005 Tools for OfficeOutlook Add-ins
Visual Studio 2005 Tools for OfficeOutlook Add-ins
Project template for Outlook Add-insProject template for Outlook Add-ins
Add-in loader component Add-in loader component
Snippets & samples for common dev Snippets & samples for common dev taskstasks
.NET Framework, Web services, .NET Framework, Web services, ADO .NET, integrated debuggingADO .NET, integrated debugging
![Page 20: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/20.jpg)
Possible VSTO Outlook ScenariosPossible VSTO Outlook Scenarios
Line of Business ApplicationsLine of Business Applications
Collaboration & Workflow Collaboration & Workflow SolutionsSolutions
Digital Content IntegrationDigital Content Integration
Calendar Integration SolutionsCalendar Integration Solutions
Utilities & ToolsUtilities & Tools
![Page 21: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/21.jpg)
![Page 22: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/22.jpg)
Visual Studio 2005 Tools for the Microsoft Office System Version 3 (Coded named Orcas)
Visual Studio 2005 Tools for the Microsoft Office System Version 3 (Coded named Orcas)
![Page 23: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/23.jpg)
Ribbon ExtensibilityRibbon Extensibility
Menus / toolbars are goneMenus / toolbars are gone
New extensibility modelNew extensibility modelTargeted same behavior across applicationsTargeted same behavior across applications
Declarative markup with new controlsDeclarative markup with new controls
U.I. definitions are additiveU.I. definitions are additive
Definitions fixed at load timeDefinitions fixed at load time
Document-level or application-levelDocument-level or application-level
TabTab
ChunkChunkRibbonRibbon
![Page 24: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/24.jpg)
VSTO ‘v3’ - OverviewVSTO ‘v3’ - OverviewStrategic platform infrastructure (WinFx, MAF)Strategic platform infrastructure (WinFx, MAF)Doc-level solutionsDoc-level solutions
Word, Excel, InfoPath: 2003 onwardsWord, Excel, InfoPath: 2003 onwardsManaged controls on the document surfaceManaged controls on the document surfaceDoc-level ActionsPaneDoc-level ActionsPaneServerDocument – manipulate documents without ServerDocument – manipulate documents without automating Officeautomating OfficeWord content control supportWord content control support
App-level add-insApp-level add-insAppdomain isolationAppdomain isolationRemote updateabilityRemote updateabilityAll Office appsAll Office appsApp-level custom ActionsPaneApp-level custom ActionsPaneRibbon customizationRibbon customizationSupport for legacy “shared” add-insSupport for legacy “shared” add-ins
Highly-streamlined developer experienceHighly-streamlined developer experienceNew designers: ribbon, ActionsPane, OutlookNew designers: ribbon, ActionsPane, OutlookClickOnce deployment and securityClickOnce deployment and security
![Page 25: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/25.jpg)
CustomTaskPane and RibbonCustomTaskPane and Ribbon
![Page 26: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/26.jpg)
SummarySummaryOffice development is more Office development is more approachable, discoverable, richer, approachable, discoverable, richer, and robustand robustData binding makes your life easierData binding makes your life easierHosted and managed controls provide Hosted and managed controls provide greater design flexibilitygreater design flexibilityOffline and server features extend the Offline and server features extend the reach of Office application reach of Office application developmentdevelopmentVSTO 2005 ships with:VSTO 2005 ships with:
Microsoft Visual Studio Tools for the Microsoft Office Microsoft Visual Studio Tools for the Microsoft Office System 2005System 2005Microsoft Visual Studio Team SystemsMicrosoft Visual Studio Team Systems
VSTO Version 3.0 in developmentVSTO Version 3.0 in development
![Page 27: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/27.jpg)
AgendaAgenda
Understanding Smart ClientsUnderstanding Smart Clients
Building Smart Clients Using OfficeBuilding Smart Clients Using Office
Building Smart Clients for Mobile Building Smart Clients for Mobile DevicesDevices
![Page 28: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/28.jpg)
OutlineOutline
Developing Windows Mobile Developing Windows Mobile ApplicationsApplications
Devices and the Windows Mobile Devices and the Windows Mobile platformplatform
Getting started with device developmentGetting started with device development
User interface and controlsUser interface and controls
Windows Mobile 5.0Windows Mobile 5.0Common device tasksCommon device tasks
State and Notifications BrokerState and Notifications Broker
![Page 29: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/29.jpg)
Windows Mobile DevicesWindows Mobile Devices
Windows Mobile provides a variety of Windows Mobile provides a variety of device typesdevice types
Pocket PC Pocket PC
SmartphoneSmartphone
Pocket PC Phone EditionPocket PC Phone Edition
![Page 30: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/30.jpg)
The Windows Mobile PlatformThe Windows Mobile Platform
Windows MobileWindows MobileCommon Win32 platform across device Common Win32 platform across device typestypes
Mobile versions of productivity toolsMobile versions of productivity toolsExcel Mobile, Word Mobile, Pocket OutlookExcel Mobile, Word Mobile, Pocket Outlook
Simplified access to device extensionsSimplified access to device extensionsCamera, GPS, PhoneCamera, GPS, Phone
![Page 31: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/31.jpg)
Developing for Windows MobileDeveloping for Windows Mobile
.NET Compact Framework 2.0.NET Compact Framework 2.0Leverage desktop .NET Framework skills Leverage desktop .NET Framework skills
Optimized for smart devicesOptimized for smart devicesProvides 28% of the coverage in 8% of the sizeProvides 28% of the coverage in 8% of the size
Full support for VB 2005 and C# language Full support for VB 2005 and C# language featuresfeatures
Visual Studio 2005Visual Studio 2005Development experience consistent with Development experience consistent with desktopdesktop
Automated application deploymentAutomated application deployment
Integrated device debuggingIntegrated device debugging
EmulatorsEmulatorsDevelop and debug applications without a Develop and debug applications without a devicedevice
Emulator Manager provides centralized controlEmulator Manager provides centralized control
![Page 32: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/32.jpg)
Windows Mobile 5.0 ToolsWindows Mobile 5.0 ToolsVisual Studio 2005 is the single development tool Visual Studio 2005 is the single development tool for Windows Mobile 5.0 developmentfor Windows Mobile 5.0 development
Supports build, deploy, debug across .NET Compact Supports build, deploy, debug across .NET Compact Framework 1.0/2.0 and native code for Windows Mobile Framework 1.0/2.0 and native code for Windows Mobile 2003 devices upward2003 devices upward
Integrates device development completely to Integrates device development completely to Visual Studio development environmentVisual Studio development environment
Managed and native development in one placeManaged and native development in one place
IntelliSenseIntelliSense
Remote ToolsRemote Tools
eVC3, eVC4, and VS .NET 2003eVC3, eVC4, and VS .NET 2003Applications will still runApplications will still run
Cannot debug or deploy direct to Windows Mobile 5.0Cannot debug or deploy direct to Windows Mobile 5.0
Should be used for maintenance of apps for pre-2003 Should be used for maintenance of apps for pre-2003 devicesdevices
![Page 33: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/33.jpg)
New Features in VS 2005New Features in VS 2005True ARM emulator with higher fidelity experienceTrue ARM emulator with higher fidelity experience
Same executable/CAB for device and emulatorSame executable/CAB for device and emulatorRealistic device performanceRealistic device performanceDirect3D and GAPI supportDirect3D and GAPI supportActiveSync, Shared Folders, Rich Display, More Serial PortsActiveSync, Shared Folders, Rich Display, More Serial Ports
New debuggerNew debuggerBrand new architecture rewritten from line 0Brand new architecture rewritten from line 0Optimized for USB 2.0 performanceOptimized for USB 2.0 performanceAttach to and debug a running processAttach to and debug a running processAttach to multiple processes on multiple devicesAttach to multiple processes on multiple devices
New designersNew designersImproved UI designers (docking and anchoring)Improved UI designers (docking and anchoring)Data designers (drag, drop and bind SQL to forms)Data designers (drag, drop and bind SQL to forms)Improved CAB designer support (new project type)Improved CAB designer support (new project type)
Multiplatform supportMultiplatform supportTarget multiple devices and platforms with a variety of Target multiple devices and platforms with a variety of languages--all within a single projectlanguages--all within a single project
![Page 34: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/34.jpg)
Windows Mobile 5.0 Managed APIsWindows Mobile 5.0 Managed APIs
Focus on simplifying device Focus on simplifying device developmentdevelopment
Encapsulate common device tasksEncapsulate common device tasksGlobal Positioning System interactionGlobal Positioning System interaction
Camera and picture managementCamera and picture management
3-D Graphics and multimedia support3-D Graphics and multimedia support
State and Notifications Broker (SNAPI)State and Notifications Broker (SNAPI)Common repository for device informationCommon repository for device information
Phone state, battery life, what song is playingPhone state, battery life, what song is playing
Sends notifications of changes in device stateSends notifications of changes in device stateNetwork availability, arrival of phone callNetwork availability, arrival of phone call
Arrival of SMS/email messageArrival of SMS/email message
![Page 35: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/35.jpg)
The Windows Mobile Developer ExperienceThe Windows Mobile Developer Experience
![Page 36: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/36.jpg)
User Interface BasicsUser Interface Basics
UI created with same form-based model as UI created with same form-based model as desktopdesktop
Most desktop controls availableMost desktop controls available
Consistent properties supportConsistent properties support
Consistent event modelConsistent event model
Device specific controls addedDevice specific controls addedInputPanelInputPanel
NotificationNotification
DocumentListDocumentList
![Page 37: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/37.jpg)
Working with ControlsWorking with Controls
![Page 38: Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Todd Apley Software Design Eng/Test Lead toddap@microsoft.com](https://reader035.vdocuments.site/reader035/viewer/2022070404/56649f335503460f94c504a9/html5/thumbnails/38.jpg)
SummarySummary
Smart Clients allow developers to Smart Clients allow developers to take advantage of all of the resources take advantage of all of the resources available on the machineavailable on the machine
Developers with Windows Forms or Developers with Windows Forms or ASP .NET development skills can ASP .NET development skills can leverage these to create applications leverage these to create applications for Office or Mobile devicesfor Office or Mobile devices