Microsoft Expression Blend 2 review
Expression Blend lies at the heart of Microsoft’s mission to make application development richer and more efficient. It’s where you design the user interface, and Microsoft’s presentational markup language, XAML, is central to this.
Blend is the one Studio application where XAML code can be edited directly, complete with full coding support, and support for this has been enhanced in this version: Blend 2’s new Split view makes editing much easier than before, allowing you to see the effect of your changes as you work.
Despite the direct coding capabilities, most designers will still work mainly in Blend’s visual Design window. This is where you can add graphical elements to give your interface an individual look and feel. Blend’s drawing toolset is unchanged but new features such as Ctrl-drag copying, improved handling of multiple objects and updatable brush resources all make life easier, as does the ability to directly drag and drop external media files into your project. The integration with Studio 2’s Expression Design is even tighter thanks to improved handling of XAML containing embedded bitmaps.
Once added, you can quickly bring your elements to life. Blend 2 adds new support for vertex-level animation and, as this also applies to the points that define clipping paths, you can now animate the shape of masks. A new graphical spline editor allows you to manage easing behaviour for keyframes – a capability that is essential for creating smooth results. Top-level handling of animations is also improved through a new storyboard picker with shortcuts for deleting, renaming, reversing and managing repeats.
The look and feel of your interface is important but secondary to its functionality and interactivity. This is managed in Expression Blend through controls – layout containers, text boxes, forms elements and so on – that are dragged and dropped onto a design. There’s no change in what’s on offer here, but you can now group elements, allowing you to create your own custom controls for re-use in current and future projects. There’s also a significant change to the handling of text-based controls with the ability to embed fonts with various subsetting options to improve efficiency.
Once you’ve created your interface, you need to tie your XAML controls to code-behind files to ensure that your application doesn’t just look good but actually does something. During set-up, projects in Expression Blend 2 can be targeted at either C# or Visual Basic and now at either the .NET Framework 3.0 or 3.5 to provide Windows Presentation Foundation (WPF) functionality (this is built in to Vista and available as a download for XP).
New projects in Expression Blend are now treated as “solutions” and you can now add multiple projects to the same solution and save copies as you work. Each solution is compatible with Visual Studio and it’s here that the code-behind logic needs to be added and the solution compiled to final EXE for deployment.
This deep integration with Visual Studio is Blend’s biggest strength but the fact that Blend 2 still hasn’t added its own coding and deployment capabilities means that it’s not a complete solution for desktop development. You have to buy Expression Studio suite for that which includes a copy of Visual Studio 2008 Standard Edition to fill the gap.
However, Expression Blend 2 can now act as a standalone solution for producing an entirely new type of application. When you first set up your project you can now choose to create either a WPF-based desktop application or a Silverlight-based web application. Silverlight offers a subset of WPF functionality via a cross-platform browser add-on, in much the same way as the ubiquitous Flash player. This enables Blend 2 to move beyond Windows-only desktop EXEs to universal browser-hosted Rich Internet Applications (RIAs).
|Software subcategory||Developer tools|
Operating system support
|Operating system Windows Vista supported?||yes|
|Operating system Windows XP supported?||yes|
|Operating system Linux supported?||no|
|Operating system Mac OS X supported?||no|