Hi, I am looking for some guidance and advice. I am new to the world of wpf "6 months" with 8 years development in windows forms.

I still have not opened or used blend.I can see that is a designer tool but from a programmer prospective given that there are so many things to learn these days not sure if I should bother.

Should I bother to learn how to use blend? Has blend any cool features apart from designing stuff and making it pretty that will make my life easier as a wpf programmer?

Please let me know if you think I should learn to use expression blend?



I dont know how to put a generic answer for everybody so I have edited my question.

Guys thanks a lot for all your answers all good.I will definetely look at it but not deeply. One interesting point would be to see how controls are built and learn from it. At this stage I dont do any design at all I am just a pure developer. Thanks again.

+3  A: 

I think that Blend is purely a design tool and it won't in any case improve/simplify your task as a WPF programmer. Despite this developers strong part is not designing GUIs, so if you want your users to love you hire a designer that uses some tool such as Blend to make GUIs of your applications look better. Believe me you will see the difference.

Darin Dimitrov
Most(Almost all) of the companies I have come across don't hire a WPF designer to build the UI, they want a developer who can design a good UI and develop the application at the same time.
The company I worked for hired an outside design company to create the GUI for our application (amongst other things). They had no developers, and recommended WPF. They did all their design in Blend as a result and it worked great.
Will Eddins
@Will, You are the Lucky one :)

Every control or visualisation you're likely to need has already been built by someone else, and if you're a programmer not a designer, it's probably been built better than you can do it.

Also don't forget that at the end of the day Blend is just a XAML generator. anything you can do in blend you can either hand-code or tweak existing code.

I don't agree with the second point. Blend provides much more capabilities and can be very helpful and surely time saving then hand-coding the templates, styles, triggers and various other things.
+2  A: 

As a programmer I don't have much use for Blend, but I think it is important that you understand what it can do. That doesn't mean you need to learn how it works from top to bottom, but stepping through some basic tutorials wouldn't hurt.

If nothing else it can be interesting (and sometimes educational) to see how Blend constructs XAML (it has a XAML window with the designer in the same way that visual studio does).

+1 I totally agree to that.
+2  A: 

Blend has a reasonably steep learning curve, and as you say, as a developer there is much to learn. If you are new to WPF and primarily a developer I would suggest making sure you are used to the WPF concepts by hand rolling stuff in the VS2010 XAML editor first. This gives you a good grasp of the basics. You can then move to the designer in VS2010, which is something you may be perfectly happy using.

Blend is useful to examine if you want to get a handle on how designers work with WPF. It is very good for doing design/styling and handling animations etc, but is quite different from using WPF in VS2010. I would certainly spare some time to play around with it, but whether it will become you primary design tool depends on your focus and your background.

Things to consider:

  • What is your role? Hom much of the WPF GUI design is done by you?
    • Are you used to working with graphic design tools?
  • Do you work with designers or have access to designers?
  • How 'polished' are the WPF apps you create?
    • Do they lean towards line of business stuff or are they more creative?
    • How heavily do you need to style your app / controls or could you get by with using off the shelf pre-styled controls?
    • Do you have a need for extensive behaviours or animation?
  • Do you need to view design time data?
  • Are you interested in developing for Windows Phone 7?

The bottom line is, you may well want to take a look and it's definitely worth doing that. The more flare you wish to bring to your apps or the more you want to interact with designers the more you will want to use Blend.

Max Palmer
+4  A: 

I agree to what all have said here but still I feel that you must get your hands on Blend as much as possible. Knowledge/Expertise of blend will be a great plus point for your skill set and resume. Moreover if you become comfortable using Blend it will really help you a lot in developing WPF application even if you are not a designer. It will help you a lot in understanding capabilities of WPF framework and use them easily in your work.

I am working on WPF for more then 2 years and I regret why I didn't started using Blend earlier. So if you want to stay with WPF for a very long time then knowledge of BLend will be very fruitful.

+1  A: 

I'm 8 months with WPF, also developer not designer. About month ago, I found out that Blend can show you how controls are built.

Just put some control on form in Blend, right click -> Edit Control Parts(Template) -> Edit a Copy and you will get complete template for that control.

Then you can use that as starting point for customizing or building your own controls.
Now, I'm using it to create/modify control template and then I just copy parts of XAML to Visual Studio.

+1  A: 

Only if you want to make your life easier