views:

3167

answers:

5

Hello, I'm looking for some programming guides to C# GUI design. I come from the Java camp (where I can happily hand-code Swing/AWT GUIs) and thus don't have a clue where to start :(

Also, what difference (if any) is there between the Windows Presentation Foundation and WinForms?

+8  A: 

Windows Presentation Foundation is a vector-based system that is part of .NET 3.0. It allows you to define your UI in XAML, and can do all sorts of animation, 3D, etc. very easily. It's much newer and still being evalulated by a lot of folks.

Windows Forms is a wrapper over older windows UI classes (Win32/MFC or whatever). It came with .NET 1.0 and uses C# to define all the UI and its layout. It's the tried and true UI method.

Sam Schutte
So WinForms is the preferred method of design? Do you know of any guides to get me started? Thanks
Richie_W
As far as a preferred method, it's hard to say. WinForms is probably quicker to work in since you don't have to learn XAML - it's more like Java's drag and drop stuff. But WPF is the "future" and is a lot more powerful.
Sam Schutte
I can't really recommend any good guides for WPF (haven't found one yet). But WinForms guides are a plenty. Maybe try the Wrox books?
Sam Schutte
Not necessarily. WinForms are considered to be a dead end by MS at this point. This does not immediately mean that you should not consider WinForms, of course. But I'd suggest seriously checking out WPF.
WinForm is not dead. It's still more used.
Daok
Winforms is definitely not dead. It's being used by quite a few shops and desktop apps. I have a commercial desktop app that uses Winforms. A lot of customers barely have .NET 2.0 installed. You need .NET 3.0 to use WPF.
hectorsosajr
+5  A: 

Chris Sells seems to be 'dah man' with regard to Windows Forms and WPF:

http://www.sellsbrothers.com/writing/
http://www.sellsbrothers.com/writing/wfbook
http://www.sellsbrothers.com/writing/wpfbook

Also well taking a look at Charles Petzold as well:

http://www.charlespetzold.com/winforms/index.html

MS also have a heap of stuff related to design guidelines and usability from a windows perspective:

http://msdn.microsoft.com/en-us/library/aa152962.aspx

Kev
+6  A: 

WPF is a totally a different and a new way to look in to the UI architecting and implementation. The cool concept of collaborative development by a designer and C# developer is a biggest advantage(XAML markup actually gives this ability). When you develop a control/UI it will be in a 'lookless' manner and Designer/Integrator can take that same project(XAML) and style it for a greater look and feel. So in short WPF or Silverlight is a paradign shift in the way we do winforms development.

So .NET3.5 UI design can be done in two ways. 1) Winforms way 2) WPF-XAML way. I think for a futuristic and modern UI you definitely need WPF than winforms.

Jobi Joy
A: 

No mention of GUI design would be complete without mention of Alan Coopers About Face although at first glance it looks out of date (most of the screenshots are windows 3.1) its content is still valid today

Richard
+8  A: 

Actually you will probably be more comfortable with hand-coding WPF with your background, I also have done my share of swing interfaces with Java and, although winforms makes it really easy to draw up an interface, I was able to get into WPF quickly because a lot of the layout concepts were the same as Java. Some winforms-only programmers really struggle getting into WPF because of the different layout paradigm.

Dale Halliwell