WEB203 – Jump into Silverlight!… and Become Effective Immediately with Tim Huckaby, Fou
Posted
by Robert Burger
on Geeks with Blogs
See other posts from Geeks with Blogs
or by Robert Burger
Published on Fri, 18 Jun 2010 09:33:49 GMT
Indexed on
2010/06/18
16:43 UTC
Read the original article
Hit count: 585
Getting ready for the good stuff. Definitely wish there were more Silverlight and WCF RIA sessions, but this is a start. Was lucky to get a coveted power-enabled seat. Luckily, due to my trustily slow Verizon data card, I can get these notes out amidst a total Internet outage here. This is the second breakout session of the day, and is by far standing-room only. I stepped out before the session started to get a cool Diet COKE and wouldn’t have gotten back in if I didn’t already have a seat.
Tim says this is an intro session and that he’s been begging for intro sessions at TechEd for years and that by looking at this audience, he thinks the demand is there. Admittedly, I didn’t know this was an intro session, or I might have gone elsewhere. But, it was the very first Silverlight session, so I had to be here.
Tim says he will be providing a very good comprehensive reference application at the end of the presentation. He has just demoed it, and it is a full CRUD-based Sales Manager application based on… AdventureWorks!
Session Agenda
- What it is / How to get started
- Declarative Programming
- Layout and Controls, Events and Commands
- Working with Data
- Adding Style to Your Application
Silverlight… “WPF Light”
Why is the download 4.2MB? Because the direct competitor is a 4.2MB download. There is no technical reason it is not the entire framework. It is purely to “be competitive”.
Getting Started
Get all of the following downloads from www.silverlight.net/getstarted
- Install VS2010 or Visual Web Developer Express 2010
- Install Silverlight 4 Tools for VS2010
- Install Expression Blend 4
- Install the Silverlight 4 Toolkit
Reference Application Features
- Uses MVVM pattern – a way to move data access code that would normally be inline within the UI and placing it in nice data access libraries
- Images loaded dynamically from the database, converting GIF to PNG because Silverlight does not support GIF.
- LINQ to SQL is the data access model
- WCF is the data provider and is using binary message encoding
Declarative Programming
- XAML replaces code for UI representation
- Attributes control Layout and Style
- Event handlers wired-up in XAML
- Declarative Data Binding
Layout Overview
- Content rendering flows inside of parent
- Fixed positioning (Canvas) is seldom used
- Panels are used to house content
- Margins and Padding over fixed size
Panels
- StackPanel – Arranges child elements into a single line oriented horizontally or vertically
- Grid – A flexible grid are that consists of rows and columns
- Canvas – An are where positions are specifically fixed
- WrapPanel (in Toolkit) – Positions child elements in sequential position left to right and top to bottom.
- DockPanel (in Toolkit) – Positions child controls within a dockable area
Positioning
- Horizontal and Vertical Alignment
- Margin – Separates an element from neighboring elements
- Padding – Enlarges the effective size of an element by a thickness
Controls Overview
- Not all controls created equal
- Silverlight, as a subset of WPF, so many WPF controls do not exist in the core Siverlight release
- Silverlight Toolkit continues to add controls, but are released in different quality bands
- Plenty of good 3rd party controls to fill the gaps
- Windows Phone 7 is to have 95% of controls available in Silverlight Core and Toolkit.
Events and Commands
- Standard .NET Events
- Routed Events
- Commands – based on the ICommand interface – logical action that can be invoked in several ways
Adding Style to Your Application
- Resource Dictionaries – Contains a hash table of key/value pairs. Silverlight can only use Static Resources whereas WPF can also use Dynamic Resources
- Visual State Manager
- Silverlight 4 supports Implicit styles
- ResourceDictionary.MergedDictionaries combines many different file-based resources
Downloads
© Geeks with Blogs or respective owner