About Me
Member of the Global Mobility Practices team
Free consulting can occasionally be bought for a large bag of fries and a cold drink
Blog: http://blogs.msdn.com/knowledgecast
Email: [email protected]
Twitter: @arunjeetsingh
Session Prerequisites
Visual Studio.NET
.NET Compact Framework
Familiarity with P/Invoke
Knowledge of Windows Mobile Development
What We Will Learn Today
What Makes a Great Looking UI
Transparency and Custom Borders
Some Guidelines
The UI Framework
Recap and Next Steps
Q & A
My Favourite Mobile Applications
My Favourite Mobile Applications
My Favourite Mobile Applications
What Makes a Great Looking UI
Background Images
Transparent Overlays
No Sharp Edges
Gradients!
Transparency
Transparent Backgrounds
Semi-transparent Images
Using the Alpha Channel
Transparency
Transparent Backgrounds
Transparency
Transparent Backgrounds
Transparency
Transparent Backgrounds
Semi-transparent Images
Using the Alpha Channel
Transparent Backgrounds
One color (the background) is transparent
Support OOB in .NET Compact Framework
ImageAttributes attr = new ImageAttributes();
attr.SetColorKey(Color.Red, Color.Red);
e.Graphics.DrawImage(bmp, destRect, 0, 0, bmp.Width, bmp.Height, GrahicsUnit.Pixel, attr)
Semi-transparent Images
The image blends in with the background
Alpha BlendingSupported by the Platform
[DllImport("coredll.dll")
extern public static Int32 AlphaBlend(IntPtr hdcDest,Int32 xDest, Int32 yDest, Int32 cxDest,Int32 cyDest, IntPtr hdcSrc, Int32 xSrc,Int32 ySrc, Int32 cxSrc, Int32 cySrc,
BlendFunction blendFunction);
Building a Splash ScreenArunjeet SinghMobility ConsultantMicrosoft
Using the Alpha Channel
Parts of the image are drawn with an “alpha” channel
The channel defines custom transparency
Supported by a COM interfaces of the Imaging API
IImagingFactory
IImage
Custom Borders
Turn off the default border
Using custom borders
Using Rounded Borders
Some Guidelines
Window transparency is not supported
Drawing must be done in one Graphics context
Reuse drawing resources (Brushes, Pens, Fonts)
Use double buffering
Recap
Mobile UI trends
Transparency implementation
Custom Borders
UI Framework
Next Steps
Get the Windows Mobile 6 SDK
http://www.microsoft.com/downloads/details.aspx?familyid=06111A3A-A651-4745-88EF-3D48091A390B&displaylang=en
Next Steps
Leverage what we talked about today
http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=uiframework&ReleaseId=2315
Next Steps
Build Great Looking Applications!
More Information
Code from this session:http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=uiframework&ReleaseId=2315
How to create a Microsoft .NET Compact Framework-based Image Button:
http://msdn.microsoft.com/en-us/library/aa446518.aspx
Chris Lorton’s blog (Alpha Blending):http://blogs.msdn.com/chrislorton/archive/2006/04/07/570649.aspx
More Information
How-to Display Gradient Fill:http://msdn.microsoft.com/en-us/library/ms229655.aspx
Building Graphically advanced Apps in .NET Compact Framework:
http://expression.microsoft.com/en-us/dd279543.aspx
MSDN Article that covers these concepts:http://msdn.microsoft.com/en-us/library/dd630622.aspx
Related Content
May 15 (1100 – 1215) - Windows mobile platform: Past, Present and Future
May 15 (1500 – 1615) - Occasionally connected Applications using the Sync Framework
May 15 (1630 – 1745) - Understanding and optimizing for .NET CF Memory Architecture
Exam 70-540 - Microsoft Windows Mobile 5.0 - Application Development
© 2009 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.