Download presentation
Presentation is loading. Please wait.
1
Jay Roxe Lead Product Manager jroxe@microsoft.com
Smart Client Development Using Visual Studio Tools for Office and Windows Mobile Jay Roxe Lead Product Manager
2
Agenda Understanding Smart Clients Building Smart Clients Using Office
Building Smart Clients for Mobile Devices
3
Smart clients are easily deployed and managed client applications
Web Services & Offline/Online support Device Adaptability Tough to Deploy Heavy Footprint DLL Hell Network Dependency Poor User Experience Rich UI Complex To Develop Broad Reach Rich User Experience Developer Productivity Easy Change Management Responsive Ease of Deployment Smart clients are easily deployed and managed client applications that provide an adaptive and interactive experience by leveraging local resources and intelligently connecting to distributed data sources.
4
Increasing Productivity
5
For line of business application developers, Visual Basic 2005 is the most productive tool for developing Windows, Web, Office and Mobile applications.
6
Visual Basic Design Goals
Increase productivity Cut development time in half Reduce code by more than 50% Leverage full power of the desktop Create rich windows client applications Deploy with ease and safety of the Web Provide full access to the platform Maintain direct access to .NET Framework
7
Bringin’ Back the RAD Exception Assistant Edit and Continue
Debugger Visualizers XML Documentation Simplified IDE AutoCorrect
8
Agenda Understanding Smart Clients Building Smart Clients Using Office
Building Smart Clients for Mobile Devices
9
Smart Clients on Office
Bedrock of features to leverage Rich user experience provided by Office applications XML schemas provide custom business structure Actions task pane and Smart Tags enable contextual UIs Online / Offline capable Broadly used by knowledge workers Familiar authoring and formatting of business documents Analysis and calculation of business data Information sharing and collaboration Capitalize on the benefits of the Office platform Power of Office platform investments Improved end-user productivity and reduced data errors Substantially reduce end-user training costs Reduce end-user training costs Users are already familiar with Word and Excel Reduce copy/past and data re-entry errors Connect documents to business data Reduce development effort Leverage existing functionality Knowledge worker benefits Access to Office feature richness for all LOB tools Quicker adoption through user-familiar solutions Reduced training costs Improved user experience over web-based applications
10
Visual Studio 2005 Tools for the Microsoft Office System (VSTO)
Microsoft’s strategic tool for developing Office solutions: Microsoft Excel 2003* Microsoft Word 2003* Microsoft InfoPath 2003 Microsoft Outlook 2003 Add-in Support Targeted at the professional developer Visual Basic 2005 Visual C# Document-centric solutions for Excel, Word and InfoPath Provides all the productivity of Visual Studio, and all the power of the .NET Framework Leverages the skills of .NET developers Based on .NET Code Access Security Online Publish deployment model * Microsoft Office System Professional Edition or Excel 2003 or Word 2003 standalone versions
12
Reasons for using VSTO vs. VBA
VBA* is a 1990’s Technology Subset syntax = limited functionality & flexibility Code in document = no source code/version control Casual security model = high potential security risk Access to limited controls within Office applications Visual Studio Tools for Office is 100% .NET Complete syntax (Professional languages) Choice of Visual Basic .NET or C# Code Behind = mainstream source code control “Publish” deployment for easier version control .NET Security model = robust security enforced Complete access to managed controls * There are no pending plans to retire VBA at this time
13
Major focus on dev. productivity
Integrated design-time experience (Excel & Word right in the IDE) Full access to the .NET Framework, Web services, ADO .NET, integrated debugging Support for managed controls (MS and third-party) First class “Hosted” controls Managed Document Actions Pane & Smart Tags Schema-based programming model CLR-based security model New data caching capabilities Data island accessible in a server environment Improved online publish deployment model
14
Visual Studio 2005 Tools for Office Integrated Design-time Experience
Excel/Word Designers Windows Forms controls Publish Deployment Hosted Controls
15
Visual Studio 2005 Tools for Office Schema-Based Programming Model
Direct programmatic access to XML Nodes XMLNode instances created for each schema element Access XmlNode instances, instead of UI elements Data binding support Event model ContextEnter/ContextLeave AfterInsert/BeforeDelete BidRequestRequestDateNode.Text = Now
16
Managed Controls Windows Forms Controls
Managed Windows Forms Controls are available On the document or worksheet surface On a Windows Form On the Actions Pane Simply drag-drop from the Toolbox onto the designer surface of your choice May be dynamically added/removed at runtime Third-party/Custom .NET user controls supported On the document When you want to display the controls 100% of the time. When you want users to enter data directly in the document. For example, forms-based documents where the editing surface is locked. When you want the controls to be in-line with the data in the document. For example, adding buttons to each row of a list object. On the actions pane When you want to provide contextual information to the user. When you want only the results to appear in the document, as opposed to an entire list of data. When you want to ensure that the controls do not get printed with the document. When you want to ensure that the view of the document is not obstructed by the UI. On a Windows form When you want to control the size of UI. When you want to prevent the users from hiding or deleting the controls. When input from the user is required.
17
Actions Pane Context-based display of information
18
Actions Pane An Overview
Simplifies the developer experience Simplified object model Eliminates the need for XML expansion packs and XML mappings Provides support for managed controls The programming model is simplified. The ActionsPane object is available directly in your Visual Studio Tools for Office project. You simply add controls to the actions pane. You can create a user control and add it to the actions pane in the same way you create a user control to add to a Windows Form. The actions pane is a Windows Forms control, as well as a container for other managed Windows Forms controls. The actions pane can contain the same Windows Forms controls that are available to Windows Forms. Developers can use the familiar Windows Forms designer to design the components for their actions pane. XML expansion pack creation is not required. Smart document solutions required the use of an XML expansion pack. The XML expansion pack is the group of files that provide the logic needed for a smart document, such as XML schemas and Extensible Stylesheet Language Transforms (XSLTs). Microsoft Visual Studio Tools for the Microsoft Office System automatically attaches any necessary schemas and expansion packs and updates the registry settings. XML mapping is not required. While you can map XML elements to your document and program the actions pane to show and hide controls according to cursor location within the XML nodes, XML mapping is not required. You can code against the actions pane to respond to any event such as view control, application, and document events. Actions panes are an enhancement to the Smart Document feature introduced in Office 2003.
19
Visual Studio 2005 Tools for Office Managed Document Actions Task Pane
Layout UI with Windows Forms Designer (UserControls) Add to document with a single line of code! ISmartDocument implementation provided under the covers Does not require mapping of XML Schema Dim ctrl as new MyUserControl() ActionsPane.Controls.Add(ctrl)
20
Microsoft Word Real Estate Offer
21
Motivations for Enabling Outlook Extensibility in VSTO
A lot of people “live” in Outlook and tasks part of typical business process and document workflow Desire for single interface for multiple back-end systems Reduced training and expanded access as a result of familiar Office UI
22
Visual Studio 2005 Tools for Office Outlook Add-ins
Project template for Outlook Add-ins Add-in loader component Snippets & samples for common dev tasks .NET Framework, Web services, ADO .NET, integrated debugging
23
Possible VSTO Outlook Scenarios
Line of Business Applications Collaboration & Workflow Solutions Digital Content Integration Calendar Integration Solutions Utilities & Tools
25
Visual Studio 2005 Tools for the Microsoft Office System Version 3 (Coded named Orcas)
26
Ribbon Extensibility Menus / toolbars are gone New extensibility model
Tab Ribbon Chunk Menus / toolbars are gone New extensibility model Targeted same behavior across applications Declarative markup with new controls U.I. definitions are additive Definitions fixed at load time Document-level or application-level Menus/Toolbars are gone What happens to CommandBars (Add-Ins Tab) For, anything coded against the CommandBars OM, other legacy OMs (XLM, WordBasic), and Attached toolbars in Word, Excel documents Customization End-users (quick access toolbar) Solutions New Extensibility Model Benefits Behaves the same for all of the apps Office knows which add-in did what (O11: a free-for-all) Simplified “attached UI model” – it’s just a part in a document Less likely for Add-ins to conflict Model Uses markup files Markup is incremental - just additions / edits to what we ship Markup is relatively static – enable/disable (element-level?), show/hide as a whole Document-level, or Application-level Lives as a part in the New File Format, or inside COM Add-In Easy to read and update Licensing to 3rd parties
27
VSTO ‘v3’ - Overview Strategic platform infrastructure (WinFx, MAF)
Doc-level solutions Word, Excel, InfoPath: 2003 onwards Managed controls on the document surface Doc-level ActionsPane ServerDocument – manipulate documents without automating Office Word content control support App-level add-ins Appdomain isolation Remote updateability All Office apps App-level custom ActionsPane Ribbon customization Support for legacy “shared” add-ins Highly-streamlined developer experience New designers: ribbon, ActionsPane, Outlook ClickOnce deployment and security
28
Custom Task Panes (CTPs)
VSTO 'v3' adds app-level CTPs to VSTO 2005 doc-level task pane Create custom task panes with an add-in All the benefits of VSTO add-ins Where Office support CTPs, VSTO supports CTPs: Access, Excel, InfoPath, Outlook, PowerPoint, Word Fill the custom task pane with UserControls Design-time and runtime support
29
CustomTaskPane and Ribbon
30
Summary Office development is more approachable, discoverable, richer, and robust Data binding makes your life easier Hosted and managed controls provide greater design flexibility Offline and server features extend the reach of Office application development VSTO 2005 ships with: Microsoft Visual Studio Tools for the Microsoft Office System 2005 Microsoft Visual Studio Team Systems VSTO Version 3.0 in development
31
Agenda Understanding Smart Clients Building Smart Clients Using Office
Building Smart Clients for Mobile Devices
32
Outline Developing Windows Mobile Applications Windows Mobile 5.0
Devices and the Windows Mobile platform Getting started with device development User interface and controls Windows Mobile 5.0 Common device tasks State and Notifications Broker
33
Windows Mobile Devices
Windows Mobile provides a variety of device types Pocket PC Smartphone Pocket PC Phone Edition
34
The Windows Mobile Platform
Common Win32 platform across device types Mobile versions of productivity tools Excel Mobile, Word Mobile, Pocket Outlook Simplified access to device extensions Camera, GPS, Phone
35
Developing for Windows Mobile
.NET Compact Framework 2.0 Leverage desktop .NET Framework skills Optimized for smart devices Provides 28% of the coverage in 8% of the size Full support for VB 2005 and C# language features Visual Studio 2005 Development experience consistent with desktop Automated application deployment Integrated device debugging Emulators Develop and debug applications without a device Emulator Manager provides centralized control
36
Windows Mobile 5.0 Tools Visual Studio 2005 is the single development tool for Windows Mobile 5.0 development Supports build, deploy, debug across .NET Compact Framework 1.0/2.0 and native code for Windows Mobile 2003 devices upward Integrates device development completely to Visual Studio development environment Managed and native development in one place IntelliSense Remote Tools eVC3, eVC4, and VS .NET 2003 Applications will still run Cannot debug or deploy direct to Windows Mobile 5.0 Should be used for maintenance of apps for pre-2003 devices So that’sthe dev platform in 15 minutes. Need tools to build applications. VS 2005 is single development tool for Magneto. Supports native and managed code including NET cf 1.0 and Supports 2003 upwards. By the time Magneto ships the number of 2002 devices in market should mean that you are only maintaining an old 2002 codebase which you can use eVC 3.0 for Wanted to put all development in one place – server, desktop, mobile devices so we could invest in a single quality toolset. We wanted to give all developers benefit of VS toolset, things like intellisense but also to add to VS the things that we have in evc like remote tools. FYI Apps built with old tools still work but cannot target new features and cannot debug
37
New Features in VS 2005 True ARM emulator with higher fidelity experience Same executable/CAB for device and emulator Realistic device performance Direct3D and GAPI support ActiveSync, Shared Folders, Rich Display, More Serial Ports New debugger Brand new architecture rewritten from line 0 Optimized for USB 2.0 performance Attach to and debug a running process Attach to multiple processes on multiple devices New designers Improved UI designers (docking and anchoring) Data designers (drag, drop and bind SQL to forms) Improved CAB designer support (new project type) Multiplatform support Target multiple devices and platforms with a variety of languages--all within a single project There’s a bunch of cool new features. Scott and Nishan will cover later. ARM emulator : Debugger : New designers :
38
Windows Mobile 5.0 Managed APIs
Focus on simplifying device development Encapsulate common device tasks Global Positioning System interaction Camera and picture management 3-D Graphics and multimedia support State and Notifications Broker (SNAPI) Common repository for device information Phone state, battery life, what song is playing Sends notifications of changes in device state Network availability, arrival of phone call Arrival of SMS/ message
39
The Windows Mobile Developer Experience
40
User Interface Basics UI created with same form-based model as desktop
Most desktop controls available Consistent properties support Consistent event model Device specific controls added InputPanel Notification DocumentList
41
Working with Controls
42
Summary Smart Clients allow developers to take advantage of all of the resources available on the machine Developers with Windows Forms or ASP .NET development skills can leverage these to create applications for Office or Mobile devices
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.