Posted By: Adam Kinney | May 5th @ 2:16 PM | 36,262 Views | 24 Comments
After a short break for the show, Karl Shifflett is here to welcome us back with wide open arms, a Hawaiian shirt and a demonstration of the new features in Visual Studio 2010 for WPF development. This is definitely IDE wizardry at its best, making it easier for the developer while creating and maintaining quality code.
Rating:
4
0
I have to ask. I keep seeing these demos about WPF in Visual Studio and everytime, they claim 'things are easier'... and perhaps compared to earlier versions of WPF/XAML editors, they are - but so far, every example I've seen is an order of magnitude of complexity over Windows Forms - while rarely adding much value.

In this video, there are several beautiful examples of this.

When he adds a menu, it doesn't go where you'd expect. Then for some reason, he *manually* deletes the default settings - which is equivalent to opening the designer.cs file and editing the generated code, then fiddles with it to the point where it vanishes entirely. Then he has to find a way to actually select it (since it's zero height) and then he ends up in an entirely detached menu editor.

In WinForms, you just... drag the menu to the window. You edit the text IN the window. You edit the parameters - which are explicitly shown in the parameter panel - which brings me to the search feature shown.. it assumes you know the parameters before finding them. That seems harder, not easier.

The design of WPF really feels like someone's trying to develop a UI design language that looks like HTML - but HTML is one of the worst UI design languages out there. A lot of the 'new features' do not seem to actually make things easier - or when they do, it's fixing something that was made unnecessarily complicated by the design of WPF - and isn't that complicated in WinForms.

Watching this video leaves me with one thought: I could so most of this in 1/10th the time in WinForms. I'm still entirely unconvinced that WPF is better - except for things that ONLY exist in WPF that the architects of this refused to back engineer into WinForms.

Sorry if I sound negative, but I feel the .Net team is, once again, ignoring desktop application developers - or worse, trying to make us into web designers at gun point, which is amazingly frustrating. The feature that most appeals to me about .Net and WinForms is that I *don't* need to know the underlying UI code (even if it's now XAML rather than C#) and could focus on the business logic under it. It seems that this is going away.
I agree with you, but as a WPF developer I never use the designer in Visual Studio...we use Expression Blend. I think the experience in that designer is much better than the one in Visual Studio.

WPF looked extremely complicated and overkill for UI design when I first saw it, but after developing a small application using it, going back to WinForms is painful. The binding features alone saved me at least 40-50 hours. I did all of the work in VS2008 SP1, and only used the designer as a kind of live preview of the XAML changes I had made. It's hard for me to imagine using a drag-and-drop style editor to create XAML-based UIs. I'm very anxious to try out VS2010 (hopefull a beta soon?) so I can see the advantages over straight XAML entry.

exoteric
exoteric
I : Next<I>
I have to agree with you entirely [Werewolf], I was thinking exactly the same thing. One other thing is that somehow the styling is oddly abstract and doesn't feel as Window-ish as when you do a Windows Forms application. In the video, the XAML editor is always present and to me, if you want to demonstrate the power of the visual editor, you need to hide that text editor away. If it has to constantly assist you, the visual editor is lacking. Nothing wrong with the XAML editor of course (although with M, one may hope to see an even friendlier syntax in the future.)

That being said, yep, there are some nice goodies in there, like search - that is really something that should be made pervasive everywhere, like in the add reference dialog where you can add a reference to an assembly, for example (not sure if this is already the case in 2010). The property editor is also looking very nice and improved. And even as much as I'd like to avoid having to use the outline panel as much as possible, it is indeed very helpful and appreciated.

Brad Abrams demonstrated Silverlight 3 before Mix where he showed how "Line of Business" applications are made easier and prettier in Silverlight 3. The default stying was improved there. It still feels as if you have to bend the design to get what you want with a default WPF application, but then again, my main experience so far is with Windows Forms. I would actually say the same thing for Windows Forms, to some extent, but it has a vastly more mature editing experience. Of course the task of supporting the full WPF data model in the designer is not something I envy anyone...

Another thing Brad Abrams, or someone else, showed, was this nice mockup style, where it almost looked like the application was drawn with crayons. Very cool stuff for prototyping. That Silverlight is getting this support is very cool. That WPF applications out of the box are still somewhat "odd-ball", not so much. That Silverlight is a subset of WPF and that you can move assets between the two will of course help mitigate this.

On the other hand, I'll not complain about the vast feature set of WPF (it's vastly cool), but the sentiment that if all you care about is the core application logic and UI needs to get out of your way, then you will be a bit frustrated because the Windows Forms designer still does a better job at this. Even if you do care deeply about the UX and GUI, you probably want to get to your goal as easily as possible. The fluency of editing Windows Forms menus is but one example of how a good designer saves you time.
<Button>
    <ProgressBar />
</Button>

Now go do that real quick in winforms....
Maddus Mattus
Maddus Mattus
Do, or do not. There is no try. - Yoda

The change from Windows Forms to WPF is huge, I agree.

You can do so much more in terms of User Experience in WPF. And in my opinion the UI is the final frontier. In WPF you can provide your user with more information. And I am not talking about textual information, but visual information.

For instance; if you click on an object you can create an animation to zoom in an then break down the object into individual components, to see how the object is composed. That's relatively easy in WPF compared to Windows Forms. It just wasnt possible.

There is a video up on this site that displays virus reseachers linking documents to the actual components of the virus. Before they needed endless pages just describing what elements of the virus they research before they could present their results!

That's the power of WPF!

Hi, at http://www.xamltemplates.net/ you can find styles for all the WPF controls it will be nice if Visual Studio 2010 will support also this styles.
bonk
bonk
Ich bin der Wurstfachverkäuferin !
I am so with you. The designer is not at all where it should be. 
Microsoft Communities