What's new in Expression Blend 2?
Microsoft Expression Blend 2 lets you create Windows Presentation Foundation (WPF) applications as well as Microsoft Silverlight 1.0 websites. If you have Service Pack 1 installed, you can also create Silverlight 2 applications.
You can export content from Microsoft Expression Design 2 in a format that you can use in Silverlight 1.0 applications. You may also find Microsoft Expression Encoder 2 to be helpful when you are working with video, Silverlight, and Expression Blend 2.
Expression Blend 2 supports Silverlight 1.0 website projects. When a Silverlight 1.0 project is open, the Expression Blend 2 user interface shows only Silverlight 1.0-applicable controls and properties; WPF controls and properties that are not supported in Silverlight 1.0 are not displayed.
For information about how to use Silverlight in Expression Blend 2, see the topics under Quick start with Silverlight 1.0.
With the addition of Service Pack 1, you can now create and modify Silverlight 2 projects in which you can design rich user interface applications for the web. A Silverlight 2 project produces .xap files (and other supporting application files) that you can add to a website. If you have the Microsoft Silverlight Tools for Visual Studio 2008 installed, you can also modify your project in Visual Studio 2008, seamlessly opening code-behind files by double-clicking them in Expression Blend.
Silverlight 2 supports many features that are in common with WPF that Silverlight 1.0 did not support. When a Silverlight 2 project is open, the Expression Blend 2 user interface shows only Silverlight 2-applicable controls and properties.
For more information about Silverlight 2 in Expression Blend 2 with Service Pack 1 installed, see the topics under Quick start with Silverlight 2. For more learning resources, see the Microsoft Silverlight learning center website.
The Silverlight 2 runtime viewer is installed along with the Silverlight 2 SDK when you install Expression Blend 2 SP1. Expression Blend uses this version of the runtime to display your project in Design view, but when you test your Silverlight 2 application, the application will be rendered using the version of Silverlight that your browser uses. Your browser might use a version of the runtime that is more recent than the version that was installed with the service pack if you have visited a website that required a newer version of the runtime.
You can customize the appearance of system controls, custom controls, and user controls in their different states. For example, you can make a button appear larger when you move the pointer over it, because MouseOver is a state. You can use transition values to specify how long it takes to transition from one state to another. In your own user controls, you can define custom states as well as the appearance of the user control in those different states, and you can use event handlers to determine when the user control enters those states. For more information, see Modify the appearance of a system control in different states and Define different visual states and transition times for a user control.
Because Silverlight 2 projects support static resources, you can create reusable templates to customize system controls and user controls, effectively creating skins for those controls. You can include state changes in templates. For more information, see Create a skin for a control in a Silverlight 2 project.
Expression Blend 2 can open and work with Microsoft Visual Studio 2008 projects and solutions. By default, Windows Presentation Foundation (WPF) projects that are created in Expression Blend 2 are now Visual Studio 2008 solutions, whether targeting the Microsoft .NET Framework 3.0 or the .NET Framework 3.5. Visual Studio 2008 solutions cannot be edited in Visual Studio 2005. However, both Expression Blend 2 and Visual Studio 2005 can still open projects that were created by using earlier versions of Expression Blend and Visual Studio 2005.
When you modify a Silverlight site project in Expression Blend 2 and Visual Studio at the same time, any changes that you make in Visual Studio are immediately applied in Expression Blend. File changes in WPF projects are also synchronized between Expression Blend and Visual Studio.
Expression Blend 2 contains new functionality that lets you refactor (in other words, convert) existing graphical content into a control that you can reuse (instantiate). Selected elements, their referenced resources, and referenced animations are refactored into the new control. You must build the project to be able to see and instantiate the new control. For more information about how to use this feature, see Make a control from existing objects.
The Make Control tool is not supported in Silverlight 1.0.
Expression Blend 2 lets you view an open document in both Design view and XAML view at the same time. You can do this by selecting the new Split tab on the right side of the artboard. Changes to your document immediately appear in both the Design and XAML windows in Split view, whether the changes are made to objects, storyboards, styles, templates, keyframes, and so on. Additionally, when you select an object, whether on the artboard in Design view or under Objects and Timeline, the pointer in XAML view immediately moves to the corresponding line of XAML code. You can specify font size, font family, tab size, and word-wrap for the XAML editor (XAML tab) by modifying the Code Editor settings under Options in the Tools menu. For more information about this feature, see Edit a XAML file in XAML view and View an object or resource in XAML.
The storyboard picker replaces the old Storyboard box. The picker consists of a label to indicate the name of the selected storyboard (if a storyboard is selected), a shortcut menu (available when you right-click the label), a shortcut button (and resulting shortcut menu), and a Close button to close all storyboards and exit recording mode. Both the shortcut menu and the shortcut menu let you create a New storyboard, and if a storyboard is already selected, you can Duplicate, Reverse, or Delete the selected storyboard. The shortcut menu also lets you Rename the selected storyboard. The shortcut menu contains all storyboards in scope in a multicolumn layout. You can resize the shortcut menu, and filter its list according to a search text box at the top of the list. The storyboard label serves as the storyboard selector when you want to modify properties on a storyboard. For more information about how to use this feature, see Open or close a storyboard and Create, modify, or delete a storyboard.
Expression Blend 2 contains new functionality for setting properties on storyboards and on keyframes in the Properties panel. When you have a storyboard selected, you can set a property to change the repeat behavior, and to make it reverse when it reaches the end. Note that you can change these properties only after you click the storyboard label. For more information about this feature, see Modify a storyboard to repeat or reverse at the end of its cycle and Duplicate or reverse a storyboard.
You can now develop more realistic animations by using the new key spline editor to modify easing behavior between keyframes. When you have one or more keyframes selected in a storyboard, a key spline graphical editor appears under Easing in the Properties panel. You can drag the endpoints on the graph, or set specific values. On the graph, the x-axis represents the time between the previous keyframe and the one that is selected, and the y-axis represents the value of the property being animated. You can reuse key splines by making them into resources and applying them to other keyframes. For more information about this feature, see Change animation interpolation between keyframes.
Expression Blend 2 contains new functionality for animating individual vertices (points and tangents) on a line. Previously, if you modified a vertex when in animation recording mode, the original shape of the object was permanently modified. Now, you can animate individual vertices on a path, you can convert between line and Bezier segments, and you can add vertices to an existing animated path. For more information about this feature, see Animate the points on a path or clipping path or the Animate the vertices of a path quick start.
Expression Blend 2 now enables you to modify clipping paths on the artboard after you create them. You can also animate the individual vertices of clipping paths, and you can release a clipping path without losing the original path object. For more information about this feature, see Apply, modify, or remove a clipping path and Animate the points on a path or clipping path.
Expression Blend 2 now enables you to modify an existing drawing brush resource by dragging the drawing brush from the Resources panel to the artboard, selecting Copy DrawingBrush to Canvas on the shortcut menu, modifying the parts of the drawing brush on the canvas, and then right-clicking the canvas to move or copy the canvas back into the drawing brush resource. For more information about this feature, see Create or modify a drawing brush resource.
Resources, including drawing brush resources, are not supported in Silverlight 1.0.
Expression Blend 2 now displays a breadcrumb bar above the artboard, which helps you keep track of where you are in a template hierarchy as you navigate through it. The breadcrumb bar also helps you quickly switch editing scopes when you are editing templates and styles. The breadcrumb specifies the selected object. If a template can be applied to the object (such as a button), you can click a drop-down arrow in the breadcrumb item to view the actions that you can perform on the object (such as editing a button template). If you have already edited a style or template on the object, the breadcrumb includes additional items that represent the style and template items that you edited earlier. This makes it easy to see which style or template has already been edited on an object, to quickly switch the scope in which you are editing, and to understand exactly where you are as you make changes. For more information about this feature, see Navigate the style hierarchy using the breadcrumb bar.
The breadcrumb bar is not available when you open a Silverlight 1.0 project.
Expression Blend 2 contains new functionality for embedding fonts in your project. This enables you to include them in your application. Embedding makes sure that the font that you select for your application is the font that users will see when they run your application. Typically, users will already have most of the fonts that you can select in Expression Blend, and therefore you do not have to embed them. However, if the user does not have your chosen font, and you have not embedded the font in your project, a default system font will appear to the user.
To embed fonts in an Expression Blend application, you can use the new Font Manager dialog box available in the Tools menu. It's also available in the Advanced Properties section under Text in the Properties panel when you select a text control. Expression Blend 2 supports embedding fonts that are contained in .ttf, .ttc, .otf, and .tte files. You can use the Microsoft Private Character Editor to create your own custom characters in .tte files.
Font embedding is not supported in a Silverlight 1.0.
For information about how to use this feature, see Add a custom font to your application, Embed a font or a subset of a font in your application, and Open the Font Manager. For information about how to embed fonts in WPF applications, see Packaging Fonts with Applications on MSDN.
If you do decide to embed, subset, or otherwise redistribute fonts in your application, it is your responsibility to make sure that you have the required license rights for those fonts.
For the fonts that come with Expression Blend, see the Microsoft Software License Terms (EULA.language.rtf) file for full license terms. For other commercial fonts, see the Microsoft Typography website for information that can help you locate a particular font vendor or find a font vendor for custom work.
Expression Blend 2 now imports asset files together with the XAML code that is produced from an Expression Design 2 project. For example, if you export XAML from an Expression Design 2 project that has asset files attached (such as images), Expression Design 2 generates the XAML file, and also creates a folder named <projectname>_files, copying the asset files to that folder. In Expression Blend 2, when you use the Add Existing Item command to add the XAML file to your project, the <projectname>_files folder is automatically also added. For more information about how to use this feature, see Import XAML that is exported from Expression Design or the Import assets from Expression Design 2 quick start.
Expression Blend 2 now makes it easier for you to modify auto-sized user controls out of place (by themselves on the artboard instead of inside the document where they are used). In earlier versions of Expression Blend, if you opened a user control where the Height and Width properties were set to Auto, the object would be displayed on the artboard with a default height and width of 20. Now, you can use new resizing handles that appear on the artboard when you select the root node of your user control to set a design-time height and width. These values are stored in the following design-only properties in the root node of your XAML document:
For more information about how to use this feature, see Change the design-time size of a user control.
You can now create copies of your projects and sites in Expression Blend 2 by clicking Save Copy of Solution on the File menu. These copies are exact replicas of the project or site that you are working on. They are saved to disk yet you do not leave the version that you are working on. For more information about how to use this feature, see Create a duplicate of your project.
When you create a WPF project in Expression Blend 2, a solution file is automatically created for you. This solution file is compatible with Visual Studio 2008. In Expression Blend 2, you can now add multiple projects to your solution by right-clicking the name of the solution in the Project panel and then clicking Add New Project or Add Existing Project. You can also add references to existing projects (without copying them to your solution) by right-clicking the References folder in the Project panel and then clicking Add Project Reference. For more information about how to use this feature, see Add a new or existing project to a solution.
It is now possible to incorporate media into your projects by dragging media files from outside Expression Blend 2 and dropping them onto the artboard when a document is open. The media files are automatically added to your project. Additionally, you can drag any files into the Project panel to add them to your project. For more information about how to use this feature, see Add an image, audio, or video file to a project and Insert an image, audio, or video file into the active document.
In Expression Blend 2, you can duplicate objects by dragging them when holding the CTRL key. You can also resize, scale, and rotate multiple objects at the same time by selecting them and then using the resizing handles on the artboard. You can also rotate multiple selected objects around any center of rotation. For more information about how to use this feature, see Copy, cut, paste, or delete an object.
The Project, Properties, and Resources panels now include a close button in the upper-right corner, whether they are floating or fixed. You can open these panels again from the Window menu. You can still use the TAB key or F4 to toggle all panels at the same time.
The .NET Framework 3.5 introduces new 3D objects. Expression Blend 2 does not include the new 3D objects in the Asset Library. However, you can use them by making modifications manually in XAML, or by using Visual Studio 2008 to add the objects and then open your project in Expression Blend. The new 3D objects are recognized by Expression Blend, and you can use the 3D adorners to adjust those objects in the scene.
When building inside Expression Blend 2, the property $(BuildingInsideExpressionBlend) is set to true. You can use this property in your project or .targets files to change how the project builds when in Expression Blend. For more information about how Visual Studio supports this scenario, see the Visual Studio Integration documentation.
The Search label that appeared next to the search text box in the Properties panel, the Asset Library window, and the new storyboard picker, now appears inside the search text box. The Search text disappears when the user starts to type keywords into the search text box.