Today at Mix, Doug Olson and I presented an overview of what the next version of Blend will bring. Blend 3 is going to be a huge and exciting release, and it offers a wide range of powerful tools for both production and design phases of software development.
Blend 3 will make it easier and more cost-effective than ever to create great user experiences for WPF and Silverlight, allowing designers to retain control over their designs throughout the design and development process.
There are 6 major pillars to Blend 3:
Platform support: Silverlight 3
Blend 3 creates and edits Silverlight 3 websites and applications, and gives a great editing experience to many of the new features in SL3. For example, there is support for image effects, perspective 2.5D transforms, and great editing for the new SL data grid.
SketchFlow: Early stage-design and prototyping in Blend 3
I already blogged about SketchFlow yesterday, so I’ll be very brief today – SketchFlow is an exciting new toolset for prototyping, designed to address three pain points in the software design process:
It makes it easier to experiment with ideas for dynamic user interaction. It facilitates communication of design ideas and intent between designers and other stakeholders. And helps you to gather, evaluate and use stakeholder feedback on design ideas.
SketchFlow will help making common design workflows, including responses to RFPs in agency environments significantly more cost effective – so there is immediate business value, not “just” better design.
Better visual design in Blend
We want to make Blend 3 much more approachable for designers. This is a journey that will take more than a single release, but Blend 3 contains a number of big steps:
We added importers for Photoshop and Illustrator. The Photoshop importer preserves layers, and imports vector layers as vectors, and text layers as text, with as much font information intact as possible.
Blend 3 also greatly extends support for state-based control skinning. See this previous post for an introduction to visual state manager. In Blend 3, support for visual states got many major improvements. For one, you can now take any bit of content (for example, straight from the Photoshop importer) and convert it into a control skin, quickly and easily.
We also added many new options to state and transition editing, resulting in much more creative control. I’ll blog about the details of that in a later post.
To make visual designer feel more at home on the art board, we also cleaned up the selection model and drawing performance, made countless improvements to the way how automatic layout is controlled and added a lot to the gradient editing experience.
And for those of my readers that have used Blend before, the yellow insertion point is gone. May it rest in peace.
Interactivity for Designers
Designing for interactive applications and content is all about, well, interactivity. Blend 2 already lets you build quite a bit of interactivity through data binding, triggers (in WPF) and visual states. But there are still many places where you need to fall back to code.
In Blend 3, we introduce Behaviors as a design pattern for interactivity. Behaviors are basically re-usable black boxes of interactivity that can be applied to any element on your art board with drag and drop.
Behaviors let designers apply interactivity in a solid, production quality manner. Behaviors can be used for simple things: Change a state of a control, show a dialog, play a storyboard or change a property. They could also be used to talk to a web service to update data or to validate from entry.
We have written behaviors that create procedural animations. We made an experiment wrapping an open source physics engine in a small set of behaviors that let you make any UI physics-based just with drag and drop.
With behaviors, only your imagination is the limit.
Blend 3 will ship with a set of generally useful behaviors (not quite sure yet which will be included), but one of the core points of Behaviors is extensibility: Designers or developers can write new behaviors and build their own re-usable vocabulary of interactivity.
Behaviors are very much compatible with skills already known from WPF: The design pattern is a straightforward extension to the Trigger and Action model of WPF.
And yes, through the Behaviors model in Blend 3, the equivalent of triggers and actions (and more!) is available in Silverlight!
Designing with Data
Almost every modern UI is driven by data in some form or other. Data binding and visual styling of “hot” data therefore always has been a strong point in Blend. However, in the design phase of a project, real data in form of a data base or other data source may not be available. And even if there is a data source, it may not be viable for design-time use.
To mitigate this, Blend now lets you create sample data on the fly. You can create a new data set structure from scratch, right in Blend, and have Blend fill it with formatted random values that appear reasonably real. For example, for string columns you can choose if the generated data should look like a name, and email address, a price or a website URL, to just mention a few examples.
You can also import data and generate a design-time sample data source from that.
Additionally, we improved the overall experience of creating data bound lists, data grids, and detail views fairly massively. A lot more scenarios are now handled with simple and straight-forward drag and drop. It is a lot of fun, and really makes designing with data a whole lot easier and a whole lot more real.
Source Code Control
From our enterprise design customers, one of the most frequent feature requests for Blend was source code control . We listened, and provide TFS integration for Blend 3. You can now checkout files right from Blend, and of course check back in, access version history, and do many other things.
Other Additions to the Cast of Characters
Blend 3 has much more to offer than I could mention here. A few things are still worth mentioning:
- We now have IntelliSense in the XAML editor
- There is a new code editor built right into Blend
- We have a new docking system that lets you undock and re-dock all the panes in Blend, and create your own window pane arrangements
- There is a lot more extensibility for custom control editing, such as art board adorners and so on
More on all of these at a later time…
Blend 3 is a major new version of Blend. We hope it will give you new levels of productivity and fun from design to production.
Blend 3 helps designers to stay in control of the design process in deeper ways than ever before. It adds immediate business value and return on investment from concept design to final production.
The building blocks of Blend 3 were designed to provide a whole that, as we hope, you will find to be much more than the sum of its parts. The core features of Blend 3 are synergistic and provide support and added value for each other. For example behaviors are not just valuable in themselves, but they also give a boost to SketchFlow or the VSM editing system. Blend 3 features play well with each other.
You can download an early preview version that contains most of the building blocks I talked about here at www.microsoft.com/expression. We would love to hear your feedback!