C#.NET 3.5 GUI设计

我正在寻找一些C#GUI设计的编程指南。 我来自Java阵营(我可以愉快地手工编写Swing / AWT GUI),因此没有线索从哪里开始:(

另外,Windows Presentation Foundation和WinForms之间有什么区别(如果有的话)?

关于Windows Forms和WPF,Chris Sells似乎是’dah man’:

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

还可以看看Charles Petzold:

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

从Windows的角度来看,MS还有一堆与设计指南和可用性相关的东西:

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

Windows Presentation Foundation是基于矢量的系统,是.NET 3.0的一部分。 它允许您在XAML中定义UI,并且可以非常轻松地执行各种动画,3D等。 它更新,仍然受到很多人的评估。

Windows窗体是旧Windows UI类(Win32 / MFC或其他)的包装器。 它附带了.NET 1.0并使用C#来定义所有UI及其布局。 这是经过validation的真实UI方法。

WPF是一种完全不同的新方式,可以用于UI架构和实现。 设计人员和C#开发人员协作开发的酷概念是一个最大的优势(XAML标记实际上提供了这种能力)。 当您开发控件/ UI时,它将采用“无视”方式,而Designer / Integrator可以采用相同的项目(XAML)并为其设计样式以获得更好的外观。 因此,简而言之,WPF或Silverlight是我们实现winforms开发方式的一种范式转变。

因此.NET3.5 UI设计可以通过两种方式完成。 1)Winforms方式2)WPF-XAML方式。 我认为对于一个未来主义和现代的UI, 你肯定需要WPF而不是winforms。

实际上你可能会熟悉手工编写WPF与你的背景,我也已经完成了我与Java的swing接口的共享,虽然winforms使得绘制界面非常容易,但我能够快速进入WPF,因为很多布局概念与Java相同。 由于布局范式不同,一些仅限winforms的程序员很难进入WPF。

如果不提及Alan Coopers About Face ,就不会提及GUI设计,虽然乍一看它看起来已经过时了(大多数截图是windows 3.1)但其内容今天仍然有效