On Thursday 4/15/2010, Microsoft officially released the final version Silverlight 4. Scott Guthrie gave a 60 minute keynote on Silverlight 4 a few days prior. If you haven’t watched the keynote, I’d recommend doing so. I was impressed with the new features and the demos provided. Silverlight 4 includes a ton of new features.
Here is a quick list of some of the new features that I found interesting:
- Tooling – Multi-Targeting Silverlight 3 and 4. You can also now design within VS 2010.
- Printing API – You can now print from Silverlight.
- Right-Click Event Handling – MouseRightButtonUp/Down events are now available.
- Webcam & Microphone Access – SL can now use the client’s webcam(s) and microphone(s).
- Mouse Wheel Support – The mouse wheel event was added in SL 3, but now TextBox, ComboBox, Calendar, DatePicker, and the ScrollViewer auto-scroll. You no longer have to manually handle the event.
- RichTextArea Control – Provides an area where users can create and edit text and specify bold/italic/underlined/etc text.
- Google Chrome Support - M$ finally now supports Google Chrome.
- Implicit Theming – Create a style for a targeted type and all of those types will implicitly use it.
- Fluid UI Support in the ItemsControl – 3 new states: BeforeLoaded, Loaded, and Unloaded.
- DataGrid Enhancements – Column relative width sizing refactored.
- DataBinding Enhancements – Binding can now use StringFormat, TargetNullValue, FallbackValue (e.g. Dates no longer requires ValueConverters to format the date).
- IDataErrorInfo – When this interface is implemented, it reports data validation errors that a UI can bind to. Only one property is validated/reported on at a time.
- INotifyDataErrorInfo – Allows developers to provide custom validation logic server-side via asynchronous routines. Here is a video on the new data validation features.
- Silverlight Drop Target – Drag and drop folders/files into your Silverlight application.
- ViewBox – New control which is used to simplify the resizing of images.
- Text Trimming – Auto adding of word ellipse (…)
- Keyboard Access in Full Screen Mode – If SL is in full screen mode – all keyboard input is accepted in Silverlight as long as the application is trusted.
- Network Authentication – You can now pass separate credentials when connecting with 3rd party service providers.
- COM Interop – Silverlight can now create COM objects – however this only applies to trusted SL applications.
- Notification (“Toast”) API – Notifications (like a new Outlook email as arrived) can now be used.
- Local File Access – SL can now access the user’s “My” folders (e.g. My Documents, etc). This requires trusted SL application.
- Elevated Trust Applications – Many new features in SL4 require elevated trust. This new feature will prompt the user to allow/fully trust the SL application when installed.
- HTML Hosting with WebBrowser – You can now show and host HTML within your SL application.
- Clipboard API – SL now has access to copy to and paste from the clipboard.