.NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting...

24
.NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting [email protected] blog.markarteaga.com

Transcript of .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting...

Page 1: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

.NET Compact Framework 2.0 for the Desktop Developer

Mark ArteagaOpenNETCF Consulting

[email protected]

Page 2: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Agenda• Mobile Development

• .NET Compact Framework 2.0 Overview

• Device Specific Controls

• Data Access

• Microsoft.WindowsMobile Namespace

• Tips & Tricks

• OpenNETCF Smart Device Framework 2.0

Page 3: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Mobile Development

Page 4: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

.NET CF 2.0 Overview

• What is it?

• Why .NET CF?

• What’s Needed?

• What can you develop for?

• What’s New in CF 2.0?

• What’s Missing in CF 2.0?

Page 5: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

.NET CF - What is it?

• First made it’s debut in 2002/2003

• Developed to bring the managed developer to

the mobile space

• Developed to have the same namespaces as

the full framework

• Has device specific classes and controls

• Windows Mobile 5.0 API adds more classes

Page 6: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Why .NET CF?

• If you are a .NET shop then why not?

• If you are an ISV, why not port your

application to potentially 107million users

• If you are an enterprise, why not extend some

highly used or mission critical desktop

application

Page 7: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

What’s Needed?• If you have developed for the desktop then you already know how to develop for a mobile device• Visual Studio 2005 Standard Edition - Includes CF1.0 and CF2.0•C# or VB.Net development experience. Can also use native C++ •SDKs – some available with VS2005 some available for download• A real device to test on• A consumer or enterprise focused idea!

Page 8: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

What Can you develop for?

Page 9: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

What’s new in CF2.0• Command line compile

• COM Interop

• Resource files same as the desktop

• VB My Objects (My.Resources, My.Webservices, My.Forms)

• System.Xml enhancements (XPath, XmlSerializer, Schema)

• Improved threading

• SQL Mobile replaces SQL CE 2.0

• MSMQ now available

• Framework 2.0 changes

– Partial Classes

– Generics

– Anonymous Methods

Page 10: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

What’s Missing in CF 2.0?• My Objects

– My.Applications

– My.Computer

– My.User

– My.Settings

• Xml Schema validation is not supported because of size

• Timers – Start()/Stop() are not supported

• Remoting is not supported

• Sockets – not everything is supported

• Reflection does not have Emit namespace

• Activated/Deactivated events are not supported, can use GotFocus()/LostFocus()

instead

• Various controls because not available on Windows Mobile

Page 11: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Device Specific Controls

Page 12: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

New Controls

Page 13: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

All Controls

Page 14: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

DEMO

Tour of VS2005 from a Mobile Perspective

Page 15: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Data Access

• SQL Mobile

– Synchronization

– Storage Engine

– Query Processor

• System.Data.SqlServerCE used for SQLMobile

• System.Data.SqlClient used to access SQL Server

from device

• Typed Datasets

Page 16: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Demo

SQL Mobile and Integration with VS2005

Page 17: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

WindowsMobile.Namespace

•Microsoft.WindowsMobile.Forms

•Microsoft.WindowsMobile.PocketOutlook

•Microsoft.WindowsMobile.PocketOutlook.Mes

sageInterception

•Microsoft.WindowsMobile.Status

•Microsoft.WindowsMobile.Telephony

Page 18: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Tips and Tricks• User interface

– Landscape, portrait or square?

– VGA or not?

• Load data in background threads

• Don’t use localhost when calling a webservice

• Sharing code

– use #defines

– Compile assemblies against the CF

– Use source control ‘share’ feature to share Xsd/Typed Datasets

– Make sure not to call any device specific calls

Page 19: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

OpenNETCF SDF 2.0

• Framework to extend the Compact Framework

• It’s Free!!

• Award winning software two years in a row

• Visual Studio 2005 integration

• Don’t have to re-invent the wheel

• Save countless hours in development

• No comparable products out there in the same space

Page 20: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Demo

SDF Overview

Page 21: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Mobile Embedded DevCon

www.medc2006.com

Page 22: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Relative Links

• www.opennetcf.org

• blog.opennetcf.org

• www.microsoft.com/mobile

• msdn.microsoft.com/mobile

• msdn.microsoft.com/embedded

• msdn.microsoft.com/mobility/community

Page 23: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Contact InformationEmail: [email protected]

Websites:www.opennetcf.com (OpenNETCF Consulting)www.opennetcf.org (OpenNETCF.org)blog.markarteaga.com (My Blog)blog.opennetcf.org (Blogs of other OpenNETCF Members)

Page 24: .NET Compact Framework 2.0 for the Desktop Developer Mark Arteaga OpenNETCF Consulting marteaga@opennetcf.com blog.markarteaga.com.

Contact Information

Questions?