Friday, August 17, 2007
Day One with Blend

I expect this to be a 1000 mile journey on foot. I installed Expression Blend yesterday as well as the extensions for Visual Studio 2005.

I've been reading up on WPF, watching free video training movies from Lynda.com on Blend, and viewing video training on WPF, Expression Blend at totaltraining.com. I just attended Wintellect's 3-day Devscovery training in Redmond to see some sessions on WPF and Silverlight 1.1.

In a perfect world, Expression Blend would be the perfect accompaniment to Visual Studio. You can open the same project in both Blend and Visual Studio and you should in order to use Blend. Blend has no code-behind you can work in, and its xaml editor lacks Intellisense, but it has a terrific interactive view of the page or window.

Its properties panel is far richer than Visual Studio's. It has a list of all the properties one can apply to the selected item(s) in collapsible and expandable categories that can be searched effectively. This video shows the properties panel in Blend:

Blend Properties Panel video (4:44)

You click the lightning bolt at the top-right of the properties panel for a list of all events the selected item supports. You can type in an event handler for any event, and if Visual Studio is open, the event handler skeleton is placed in your code.

Total Training offers a bit more technical video training about WPF and Blend. The guys doing the training were or are on the WPF or Expression team. The Blend training even walks through doing a simple Value Converter (DateTime to String) in code.

The WPF videos were helpful though necessarily superficial. It's fun to watch how to create a menu, but I had just read a chapter about menus that described how real applications use commands so that the same action could be done from a toolbar button for example.

You can sign up for a free guest account at TotalTraining.com and watch the first 20 minutes of any series over two days. Microsoft posts some helpful free Blend training videos from Total Training.

As a first step in the water, I did benefit from the video training. For a gesture-intensive application such as Blend, where much functionality is accessible by clicking chevrons or little rectangular dots (to set data binding for a property of a control), it's helpful to watch someone use the application and narrate what they are doing.

In Blend, animation is done with a visual timeline, as in Flash. The beauty of a visual environment is you can have something in a storyboard at time 0, then move the play head (or whatever they call it) to some seconds later, then scale, move, change the color or transparency or rotation of that thing (setting keyframes at that time and at time 0) and Blend will do the in-between animation to get to the desired state at that future time. I know it can be done more concisely with XAML, but watching and tweaking is how a lot of us like to work.

You get identical results when you press F5 in either environment to run the project, but if there's any exception or runtime error it's best to launch it from Visual Studio with breakpoints and everything because Blend often displays a message that it encountered an error and has to close (though it just closes that file, not the Blend application itself).

Since a lot of WPF seems to be wiring things up (to resources and stuff), Blend can get out of kilter pretty easily when things aren't wired up correctly.

Again, if life were perfect, Expression Blend could be the perfect designer for the code-intensive Visual Studio, but the communication between the two is not always seamless. When you make a change in one environment, and return to the other, it prompts you whether to update the project because of the external changes. Often it seems you must build the project, not just save all files, in order for the other environment to be aware of all the changes.

I'll post more about Blend as a design tool if I have more to say that others might find interesting. I will also do a few posts about graphic design principles I've picked up that should be useful for preparing WPF and Silverlight graphic-intensive applications.
Comments: Post a Comment
Words about people and things and ideas that you might find useful, interesting and enjoyable.

December 2003 / July 2005 / August 2005 / September 2005 / October 2005 / November 2005 / March 2006 / May 2006 / June 2006 / July 2006 / August 2006 / September 2006 / October 2006 / November 2006 / December 2006 / January 2007 / February 2007 / March 2007 / April 2007 / May 2007 / June 2007 / July 2007 / August 2007 / September 2007 / October 2007 / November 2007 / December 2007 / January 2008 / February 2008 / March 2008 / April 2008 / May 2008 / June 2008 / July 2008 / August 2008 / September 2008 / October 2008 / November 2008 / December 2008 / February 2009 / March 2009 / May 2009 / July 2009 / August 2009 / September 2009 / October 2009 / November 2009 / December 2009 / January 2010 / February 2010 / March 2010 / April 2010 / May 2010 / December 2010 / September 2011 /


Paste this into in your newsreader URL and choose "Subscribe":

Powered by Blogger