Silverlight Integration Pack for Microsoft Enterprise Library 5.0 released

Check out the original post by Grigori Melnik about the new release of Silverlight Integration Pack for Microsoft Enterprise Library 5.0.


A Quick look:

Asset Description
Validation Application Block The Validation Application Block supports the following scenarios:

  • Executing validation rules across multiple tiers and gathering results.
  • Annotating your business entities with validation attributes.
  • Ensuring validation attributes compatibility with WCF RIA Services.
  • Defining validation rules in configuration.
  • Validating conditionally using rule sets.
  • Implementing self-validation.
  • Defining validation attributes in metadata. Silverlight doesn’t support the MetadataTypeAttribute. In the .NET Framework, this attribute is used to define metadata classes with validation attributes for your generated business entities. The Validation Application Block provides an implementation of the MetadataTypeAttribute for Silverlight.
  • Supporting IDataErrorInfo.
Logging Application Block Allows you to decouple your logging functionality from your application code. The Logging Application Block routes log entries to various out-of-the-box or custom destinations (locally or through a web service), it supports runtime changes to, for example,  turn existing logging up and down or change logging destinations. Batch logging is supported. The block is shipped with an implementation of a WCF Remote logging service that integrates with the desktop version of the Logging block. Additionally, tracing feature allows you to correlate log entries to a specific activity/workunit scope.
Caching Application Block A brand new implementation of the Caching application block, which is mimicking the System.Runtime.Caching API from .NET with support for in-memory caching and persistent caching (via isolated storage). It has support for expiration and scavenging policies as well notification of cache purging.
Exception Handling Application Block A port of the desktop version of the Exception Handling Application Block, which allows you to handle exceptions that might occur in any layer of your application in a consistent manner.
Interception & Policy Injection Application Block Update to Unity container for Silverlight with support for type and instance interception.
Configuration support The Silverlight Integration Pack offers flexible configuration options, including:

  • XAML-based configuration support
  • Asynchronous configuration loading
  • Interactive configuration console supporting profiles (desktop vs. Silverlight)
  • Translation tool for XAML config (needed to convert conventional XML configuration files) available as a config tool wizard, an MS Build task, or a standalone command-line tool
  • Programmatic configuration support via a fluent interface or attributes
Reference Implementation New Developer’s Guide and an accompanying Reference Implementation to illustrate the typical challenges when building a Silverlight LOB application.StockTrader V2 Reference Implementation (RI) (via a separate download)

More resources, documentation and download links are available in the public announcement.

Happy Silverlighting!

Babylon 3D engine for Silverlight 5 Beta available for download

David Catuhe has announced the availability of Babylon, a 3D engine written to demonstrate the power of Silverlight 5 Beta.

The source code is available for download here together with many other samples for Silverlight 3D in the MSDN Code samples gallery.


Also check out these useful resources by Aaron Oneal:


Happy Silverlighting!

Silverlight 5 Beta available!

Great announcements today during MIX11 in Las Vegas: Silverlight 5 Beta is available for download!

This is a list of some of the new features available:

  • Multiple Windows instances in Out-of-browser applications;
  • GPU-accelerated XNA-compatible 3D and immediate-mode 2D API;
  • DrawingSurface control for rendering 3D content;
  • Double (and multi) click support via the ClickCount event data property;
  • Low-latency sound effects and WAV support;
  • ItemsControl search via the new TextPath attached property;
  • New MarkupExtension base class for defining XAML markup extensions;
  • Data Binding enhancements:
    • Possibility to set breakpoints in XAML;
    • Data Binding enabled in Styles;
    • Binding to ancestors in the VisualTree using the RelativeSource;
    • New DataTemplate.DataType property to bind data templates to the object type;
    • Binding to dynamically-generated properties via the ICustomTypeProvider interface;
    • Application model enhancements:
      • Trusted applications can now be enabled to run inside the browser;
      • Trusted applications can now access the local file system;
      • Multiple Windows instances in trusted Out-of-browser applications.
  • Significant performance improvements, fixes and much more.

 Check out these useful links:

Happy Silverlighting!

Prism 4.0 – Useful Resources and Templates (including MEF support)

A quick shoutout to point out that David Hill has just released a new version of the PRISM Template Pack now including both MEF and Unity support.

Other useful resources about PRISM 4.0:


Developer’s Guide to Microsoft Prism 4

Now available from O’Reilly


Native Extensions 2.0 For Microsoft Silverlight Released

Version 2 of the “Native Extensions For Microsoft Silverlight” is now available for download here.

These libraries contains several COM wrappers and samples for:

  • Touch APIs – Manipulation, Gestures and Inertia processing;
  • Message Interception – Allow applications to intercept Window messages sent to the containing window;
  • Sensor API – Provide full access to the Windows 7 Sensor API;
  • Local Encoding – Allow applications to capture webcam audio/video input into a local H.264/AAC-LC encoded media file. Also allow capturing of application user interface activity as video with audio;
  • Taskbar Access – Allow applications to integrate various Windows 7 taskbar features like taskbar button overlays, jump lists, taskbar button progress notifications, etc;
  • Speech API – Allow applications to use Windows 7 Speech-to-Text and Text-to-Speech capabilities;
  • Portable Devices – Allow applications to enumerate content on connected devices like music players, digital cameras etc.;
  • Windows 7 Notification Area (System Tray) support;
  • “Single application instance” pattern support.

Happy Silverlighting!

Using the Multi-Touch Behavior in a Windows Phone 7 Multi-Page application

In these days I’m receiving several questions in the Multi-Touch Behaviors forums about enabling Multi-Touch manipulations in Windows Phone applications composed by more than one page.

Today I’ve modified the available sample inserting an additional page containing an image enabled for translation, rotation, zoom and inertia via the usual “MultiTouchBehavior“:


Starting from release 0.6.1 it’s now possible to use the Behavior in different pages of the application, in this way enabling multi-touch in different elements of a Windows Phone 7 application:

    <Image x:Name="_image"
        Source="{Binding SelectedPicture}">
                    MinimumScale="30" MaximumScale="200"

As usually the sample code is available for download on, check out the Visual Studio solution “SilverlightWP7MultiTouch.sln” which contains all necessary libraries.

Happy Silverlighting!

Silverlight 5 Announced!

Today ScottGu announced some new amazing features that will be available in Silverlight 5. The complete list is available here:

Planned release date: 1H 2011 (Silverlight 5 Beta)2H 2011 (Final Release)

Useful links:

Adding / Removing the Multi-Touch Blend Behavior using C# code-behind

I’ve received several requests about the modalities of enabling multi-touch on a UI element using the Behavior available on my CodePlex project.

The traditional syntax using XAML is here:

<Image Source="Images/Desert.jpg" x:Name="image1">
            MinimumScale="10" MaximumScale="100"

What about if you want to achieve the same result using C#? Just obtain a collection of behaviors for your element and then add/remove the MultiTouchBehavior using the following syntax:

private void btnAttach_Click(object sender, RoutedEventArgs e)
    var behaviors = 
    var mtb = new MultiTouchBehavior
        IsRotateEnabled = true,
        IsScaleEnabled = true,
        IsTranslateXEnabled = true,
        IsInertiaEnabled = true,
        AreFingersVisible = true,
        MinimumScale = 20,
        MaximumScale = 200
    mtb.Move(new Point(200, 150), 45, 100);

private void btnDetach_Click(object sender, RoutedEventArgs e)
    var behaviors = 
    if (behaviors.Count > 0)

As usually the source code is available for download on the Multi-Touch CodePlex project (check out the SilverlightWP7MultiTouch Solution).

Oh, did I already say that it also works on Windows Phone 7? 😉

Happy Silverlighting!

TechDays WPC 2010: I’ll be there! Speaking about Silverlight, Multi-Touch and Natural User Interfaces

This year I’ll be presenting about “Silverlight, Multi-Touch and Natural User Interfaces” at the Techdays WPC 2010 conference in Milano on November, 25 2010.

The same day I’ll be also at the MVP booth, if you’re attending the conference come and say Hi! 🙂

Happy Silverlighting!