Several of you have asked for a more complete list of the
features that are new or improved in Silverlight 5, especially
those new to the RC. Here is my mostly complete list of major
features. I haven't included the tons of fixes and improvements,
but maintained a focus on major features. (I say "mostly complete"
so I have an out when I later realize I forgot something.)
Binding and Related
- ICustomTypeProvider (see
Alexandra Rusina's post)
- Custom Markup Extensions
- Ancestor RelativeSource Binding
-
Implicit Data Templates
- Binding in Style Setters
- DataContextChanged Event (new since beta)
- PropertyChanged now an UpdateSourceTrigger option (new since
beta)
Graphics
- XNA 3D API
- Improved Graphics Stack
- 3D Render targets (new since beta)
- XNA 3D built-in effects (new since beta)
- 3D surface composition settings (new since beta)
- 3D multi-sample anti-aliasing (new since beta)
Media
Text
Operating System Integration
-
P/Invoke (new since beta) (also:
My Printer Enum Example)
-
Multiple Windows
- Unrestricted File System Access in Full Trust
- Full Trust in-browser
- Default Filename in SaveFileDialog and OpenFileDialog (new
since beta)
- 64 bit browser support for Windows (new since beta)
- Power awareness for media apps (keep the PC alive while a movie
is playing, for example) (new since beta)
Productivity and Performance
- Network Latency Improvements
-
Databinding Debugging
- Parser Performance Improvements
- Multi-core JIT for improved start-up time
Controls
Other
Why weren't these all in the initial list?
My initial list only had a few key features listed. Some, such
as Tasks and Covariance/Contravariance made it into Silverlight
without me realizing it. For the most part, I got the feature list
by checking with the product team and by trolling our specs
repository.
So how does stuff make it in without it being on a master
Silverlight list? That's easy. Many teams at Microsoft contribute
to Silverlight either directly, or through other things such as the
core CLR, framework, and C# language. Since Silverlight
shares much of that code, cool and exciting features make it in
without showing up in a Silverlight feature list. A great example
of this is Tasks from TPL. The right people did know those features
made it in (people actually writing code, the testers etc.), I just
hadn't noticed it. It's not a conspiracy to keep the TPL folks
down, trust me :)
Learn More
Many of these features are documented on http://silverlight.net/learn
via an increasing number of tutorials.
In addition to that, if you're looking for a one-stop shop for
learning Silverlight 5, consider my book Silverlight 5 in
Action, to be released in print near the end of this year. It's
currently in MEAP, with purchasers able to download chapters as I
make them available.