代码之家  ›  专栏  ›  技术社区  ›  Dror Helper

如何开始WPF开发?

  •  40
  • Dror Helper  · 技术社区  · 17 年前

    我从.NET 1.1开始使用WinForms,我想开始学习WPF。

    我正在为WPF初学者寻找一些好的资源。我应该阅读什么,我需要什么工具,我应该遵循哪些最佳实践?

    13 回复  |  直到 12 年前
        1
  •  20
  •   Community Mohan Dere    8 年前

    请看一下 this StackOverflow post 其中有一个图书推荐列表。

    在最佳实践方面,熟悉 M-V-VM pattern . 它似乎在WPF土地上获得了最大的牵引力。

    退房 this post 用于WPF开发的工具。

    这个 MSDN Forum 对于资源来说是一个很好的地方,WPF上的msdn帮助文件也是如此。

    我个人的建议是让你忘记你所学的关于WinForms的一切。WPF是一个完全不同的模型,一旦我最终放弃了我的“我在WinForms中这样做了,但是这种方法在WPF中不起作用”,我就有了其中一个“灯泡”时刻。

    希望这有帮助!

        2
  •  10
  •   cplotts    17 年前

    学习曲线很高,但是有很多很好的资源。而且,msdn文档和sdk示例(正如一些人已经提到的)非常好。

    不过,有一件事会对你有所帮助,那就是提前承认学习曲线,不要在没有意义的时候气馁。在做一些甚至是基本的事情之前,确实有很多概念需要“摸索”。

    已经提到的WPF书籍都有其自身的价值。我的个人经验是我有一份 WPF释放 首先,尝试着读到它,但没有用。直到我找到查尔斯·佩佐德的 应用程序=代码+标记 读一读那些…在我开始理解之前 WPF释放 . 然而,我的大脑需要详细的概念才能真正融入…

    Tim Sneath有一个非常好的WPF博客列表,我发现这些博客对于加入WPF社区很有价值: WPF Bloggers

    很少的 我必须阅读的博客列表:

    我要做的另一件事是获取wpf博士的代码片段库(位于 here )这是学习一些基本管道类型概念(如依赖属性、路由事件和路由命令)的非常好的方法。

    最后,我会得到一个Blend的副本(2.5版仍然是beta版和免费版),并使用它生成XAML,然后深入到生成的XAML中,了解您在Blend中做了什么,映射到WPF API。

    希望这有帮助。祝你好运。

        3
  •  6
  •   Jobi Joy    15 年前

    1开始了解XAML和控制继承人—UI标记及其周围的新术语和特性。kaxaml是学习xaml的好工具,可以免费下载 http://www.kaxaml.com/

    2由于您已经有了很长的.NET经验,请直接转到sdk示例并开始在其中运行,看看会发生什么,使用xaml。 http://msdn.microsoft.com/en-us/library/ms771449.aspx

    3如果你在寻找博客资源,这里是我最好的建议。

    但是,选择一个已经实现或看到的简单的UI场景,并尝试在WPF中实现它。 -这可能是学习新技术的最佳方法。

    而且请不要害怕MVVM,这些东西在您熟悉WPF平台和XAML之后就会派上用场。

        4
  •  5
  •   RichS    17 年前

    亚当·内森的-WPF发布了,这本书很好。

        5
  •  5
  •   Kevin Berridge    17 年前

    我推荐这本书 Windows Presentation Foundation Unleashed Adam Nathan

    那么我建议你写一份申请表。和其他开发环境一样,没有完美的指导方针。你必须找到对你的环境最有意义的。唯一的方法就是开始编码。

    至于工具,Visual Studio 2008[Express]是您的最佳选择。或者你可以和xamlpad一起跛行。

        6
  •  4
  •   Ray    17 年前

    我也强烈推荐使用混合与vs 2008。混合非常适合创建动画。

    这个 Blend 2.5 Preview 可以免费下载。

    我喜欢 Designer WPF Blog 其中有一些关于如何在混合中使用WPF的很好的教程。

        7
  •  3
  •   cplotts    17 年前

    虽然上面已经列出了,但我想重申一点。

    Kaxaml 是bar none,最好的松散XAML编辑器。它有一个代码段库、IntelliSense、拆分视图、XAML清除器(漂亮的打印)等等。

    我只希望我们可以连接一些程序集(您可以从XAML引用这些程序集)…

    罗比·英格布雷森,你个摇滚。

        8
  •  3
  •   Sean Sexton    14 年前

    我也很谦虚地建议你看看我的博客, 2,000 Things You Should Know About WPF 我每天在WPF上发布一条信息。博客从最初的原则开始,逐渐发展到更高级的主题,所以作为一个初学者,它是一个很好的开始。

        9
  •  3
  •   Kobi Hari    13 年前

    掌握WPF(和Silverlight,以及基本上任何基于向量的xaml.net富UI框架)需要的不仅仅是理解新的开发概念(还有很多)。它不足以完全理解依赖属性、附加属性、模板、数据绑定、样式、MVVM、布局机制、视觉状态和部件、效果、路由事件…要真正了解您的方法,您需要了解图形中的一些基本概念(例如矢量图形、光栅图形、渲染、分层图形技术、动画、像素着色、渐变、几何图形、路径、画笔、转换矩阵等)。除此之外,您还需要学习和理解M-V-VM,它不仅仅是一种新的设计模式,而是一种全新的编程模式。所以有很多东西要学…问题是,无论你选择哪一个起点,你总是觉得有些东西不见了。

    我试了几本书作为出发点,其中很多都让我很困惑。然后我找到了丹尼尔·M·索利斯的“插图WPF”,这个给了我一个技巧。他以开发人员清楚的方式解释了图形世界中的概念,然后教授基于XAML的用户界面的所有新概念,同时轻轻地接触每个主题,并通过演示深入到特定主题。通过学习这些教程,你会发现你学到了很多,更重要的是,消除了恐惧因素。

    一旦你掌握了这一点,你就可以进入亚当·内森的“水渍险”,然后再往下潜。这一个让您对WPF特有的概念有了更深入的了解,我相信您至少看过一次每个特性之后,就有了更好的理解机会。它们不知何故都是相互完整的,只有在一起才有意义。

    在那之后,您仍然有很多要学习的内容,但是在这一点上,您可以开发丰富的应用程序,并在进行中学习新的主题…

    享受:-

        10
  •  2
  •   Jim Lynn    17 年前

    Visual Studio 2008(有免费的Express版本)。这就是你需要的所有工具。

    然后尝试一些如何视频。这是一个好的开始: http://windowsclient.net/learn/videos_wpf.aspx

        11
  •  2
  •   Jordan Parmer    17 年前

    微软实际上有一个关于msdn的不错的介绍: http://msdn.microsoft.com/en-us/library/aa970268.aspx

        13
  •  1
  •   pete the pagan-gerbil    15 年前

    我发现一个真正帮助我的资源是来自JFO的编码: http://blogs.msdn.com/jfoscoding/articles/765135.aspx

    这份文件的标题是“wpf为那些知道winforms的人”,这正是我去年的立场!