What’s new in Silverlight 2 Beta 2 (S2B2)

Posted by: Suprotim Agarwal , on 6/19/2008, in Category Silverlight 2, 3, 4 and 5
Views: 23866
Abstract: Silverlight 2 Beta 2 was released on June 6th 2008. Before this release, there have been two major Silverlight releases by Microsoft, with respect to .NET. Those are Silverlight 2.0 Pre-release (also known as 1.1 Alpha Refresh) and Silverlight 2.0 Beta 1. In this article, we will explore the new features added in Silverlight 2 Beta 2.
What’s new in Silverlight 2 Beta 2 (S2B2)
Silverlight 2 Beta 2 was released on June 6th 2008. Before this release, there have been two major Silverlight releases by Microsoft, with respect to .NET. Those are Silverlight 2.0 Pre-release (also known as 1.1 Alpha Refresh) and Silverlight 2.0 Beta 1. In this article, we will explore the new features added in Silverlight 2 Beta 2.
In the first article, we covered What is Silverlight and getting started with Silverlight. If you are new to Silverlight, then before moving ahead with this article, I strongly suggest you to read the first article and install Visual Studio tools for Silverlight Beta 2.
Changes in Silverlight 2 Beta 2
Just like any other product lifecycle, Silverlight 2 is maturing and is now available in its Beta 2 version. With Beta 2, there are quite a few features and changes incorporated in this release. Let us quickly take an overview of some of the major changes.
Base class Library – Silverlight 2 includes a rich .NET base class library, however there are only a few classes available from the full .NET framework. Despite the limited number of classes and functionality, you can create some amazing piece of functionality using Silverlight. Some of the classes for Silverlight 2 have actually been written from ground-up to give maximum performance.
With Beta 2, we now have new classes for accessing and consuming ADO.NET data services (Astoria). Similarly, some changes in the Networking classes (Webclient and HttpWebRequest) now enable delegates to return response on a background thread.  Also, the System.Core.dll now contains support for LINQ-to-JSON which will enable you to run LINQ queries on JSON.
In Beta 1, there were two prominent dll’s called System.Windows.dll (classes to build UI, support databinding, animation) and System.Windows.Controls.dll (classes to support control templates). In Beta 2, a welcome change is that the Silverlight team have moved most of the controls from System.Windows.Controls.dll to System.Windows.dll. This as a result, considerably reduces the size of the .xap file, which means faster downloading of .xap files for the clients.
Networking – Silverlight 2 includes support for quite a few out-of-box networking features for calling XML based WebServices, RSS, REST, WCF Services. You were able to communicate using sockets both using IPv4 and IPv6. With Beta 2, sockets can now be used for cross domain connections also. There are also some cross domain security enhancements.
WebClient class has been moved to System.Net.dll. WebClient now has new methods to support 'upload'.  Moreover now, responses can be handled on a background thread. So you can now initiate network request and responses on a different thread and keep it independent of the UI thread.
WCF Services now support duplex communication, which means data can now be pushed from the server to the client. There has been some improvements in SOAP interop also.
Also the port range in Beta 1 for sockets was in between 4502-4532. This has been changed in Beta 2 from 4502-4534 (yet to confirm this).
With Beta 2, we now have new classes for accessing and consuming ADO.NET data services (Astoria). To write these services, you would need .NET framework 3.5 SP1 on the server. Just remember, like other services, call to these data services is also asynchronous.
UI and Control changes – Around 30 UI controls have now been incorporated as a part of the Silverlight 2 plug-in. This means, that the download size of applications will reduce considerably as controls are no more shipped as separate assemblies. Let us see some major changes in the UI:
ViewStateManager – A new templating model called Visual State Manager (VSM) has been introduced in Silverlight 2. VSM makes it much easier to build templates for controls. Using VSM, you can control the visual state and state transition of a control easily. So let us say, you want to control the appearance when the user presses or hovers a control; unlike in Beta 1, where you would need to manually define animation storyboards to do the same, with Beta 2, it can be done easily using VSM. Just open the control in Blend and edit the templates for each state.
Scott Guthrie has explained this concept quiet well in his blog. I would highly recommend reading it.
DeepZoom – With Beta2, image information can now be accessed via a XML based manifest file. The MultiScaleImage Source property has been changed from a Uri object to MultiScaleTileSource. There is also a new deep zoom composer tool available to create these new types.
Animation – There have been improvements in animation support, with Beta2 now supporting object animation. Beta 2 also contains support for animating custom data points.
Control changes - TextBox contains text-wrap, multiline support, scrollbar support, Clipboard access, ink and stylus support and keyboard input support. The Calendar control now supports multi-selection and blackout dates.
Similarly a TabControl class now exists to provide tabbed interfaces. The DataGrid has been optimized to increase performance along with the support to autosize row/column, single and multi column sorting and column rearranging/freezing. Controls have some new properties like tooltip, fontfamily, fontsize etc.
Support has been added for automation and accessibility. This release contains an UI Automation Framework. The API compatibility between WPF and Silverlight 2 has also been increased, which would in turn lead to better code reusability. Also, Express Blend 2.5 June Preview adds supports for Template Editing and a new breadcrumb like navigation.
Others Changes -
Isolated storage –Silverlight 2 allows you to store data locally in a hidden folder outside the browser’s cache, via a feature called ‘Isolated Storage’. This default storage space has now been increased from 100KB to 1MB. The space can be increased by the user.
Media - In the area of media, Silverlight can now take decisions while streaming media depending on network and CPU conditions, also called as Adaptive Streaming. Moreover support for PlayReady DRM and Windows DRM has been added to protect your content.
Security Policy - For sockets, the security policy system in Silverlight 2 Beta 2 affects both site-of-origin and cross-domain network access. In Beta 1, socket connections were explicitly allowed to the site of origin.
Data Binding – There is now a better validation support which allows validation with two way bindings. There is also support for binding to attached properties.
Additional Resources
That was quiet a mouthful. However there are many more minute changes that has not been covered over here. I would recommend you to visit the following links to cover the changes in Beta 2 in more details
ScottGu’s blog - Silverlight 2 Beta2 released
That’s it for this article. In the next article, we will see how to host Silverlight content in an asp.net application. I hope this article was useful and I thank you for viewing it.
If you liked the article,  Subscribe to my RSS Feed. 

This article has been editorially reviewed by Suprotim Agarwal.

Absolutely Awesome Book on C# and .NET

C# and .NET have been around for a very long time, but their constant growth means there’s always more to learn.

We at DotNetCurry are very excited to announce The Absolutely Awesome Book on C# and .NET. This is a 500 pages concise technical eBook available in PDF, ePub (iPad), and Mobi (Kindle).

Organized around concepts, this Book aims to provide a concise, yet solid foundation in C# and .NET, covering C# 6.0, C# 7.0 and .NET Core, with chapters on the latest .NET Core 3.0, .NET Standard and C# 8.0 (final release) too. Use these concepts to deepen your existing knowledge of C# and .NET, to have a solid grasp of the latest in C# and .NET OR to crack your next .NET Interview.

Click here to Explore the Table of Contents or Download Sample Chapters!

What Others Are Reading!
Was this article worth reading? Share it with fellow developers too. Thanks!
Share on LinkedIn
Share on Google+

Suprotim Agarwal, MCSD, MCAD, MCDBA, MCSE, is the founder of DotNetCurry, DNC Magazine for Developers, SQLServerCurry and DevCurry. He has also authored a couple of books 51 Recipes using jQuery with ASP.NET Controls and The Absolutely Awesome jQuery CookBook.

Suprotim has received the prestigious Microsoft MVP award for ten consecutive times. In a professional capacity, he is the CEO of A2Z Knowledge Visuals Pvt Ltd, a digital group that offers Digital Marketing and Branding services to businesses, both in a start-up and enterprise environment.

Get in touch with him on Twitter @suprotimagarwal or at LinkedIn

Page copy protected against web site content infringement 	by Copyscape

Feedback - Leave us some adulation, criticism and everything in between!