如何开始WPF开发?
从.NET 1.1开始,我一直在使用Winforms,我想开始学习WPF。
我正在为WPF的初学者寻找一些好的资源。我应该阅读什么,我需要什么工具,我应该遵循的最佳实践是什么?
解决方案
我会推荐亚当·内森(Adam Nathan)出版的《 Windows Presentation Foundation》一书
然后,我建议我们编写一个应用程序。像其他所有开发环境一样,也没有完美的准则。我们必须找到最适合情况的产品。唯一的方法就是开始编码。
至于工具,Visual Studio 2008 [Express]是最好的选择。或者,我们也许可以随XamlPad一起使用。
Visual Studio 2008(有一个免费的Express版本)。这就是我们需要的所有工具。
然后尝试一些操作方法视频。这是一个好的开始:http://windowsclient.net/learn/videos_wpf.aspx
亚当·内森(Adam Nathan)发布的WPF,书非常好。
微软实际上对MSDN进行了不错的介绍:http://msdn.microsoft.com/zh-cn/library/aa970268.aspx
请查看此StackOverflow帖子,其中包含书籍推荐列表。
在最佳实践方面,请熟悉M-V-VM模式。它似乎在WPF领域获得了最大的关注。
查看这篇文章,了解可以用于WPF开发的工具。
MSDN论坛是资源的好去处,WPF上的MSDN帮助文件也是如此。
我个人的建议是让我们忘记有关WinForms的所有知识。 WPF是一种完全不同的模型,一旦我最终放弃了"我在WinForms中以这种方式进行操作,但这种方式在WPF中不起作用",我便遇到了那些"灯泡"时刻。
希望这可以帮助!
1开始了解XAML并控制层次结构UI标记及其周围的新术语和功能。 KaXaml是学习XAML的绝佳工具,可免费下载http://www.kaxaml.com/
2由于我们已经有很长时间的.NET经验,请直接转到SDK示例并开始在其中运行,并查看使用XAML的乐趣。 http://msdn.microsoft.com/en-us/library/ms771449.aspx
3如果我们正在寻找Blog资源,这是我的最佳建议
- 乔希·史密斯(Josh Smith)-http://joshsmithonwpf.wordpress.com/
- WPF博士-http://www.drwpf.com/blog/
但是,选择一个已经在某个地方实现或者看到的简单UI场景,然后尝试在WPF中实现它,这可能是学习新技术的最佳方法。
并且请不要害怕MVVM,一旦我们熟悉WPF平台和XAML,这些事情将在以后变得很方便。
我也强烈建议将Blend与VS 2008一起使用。Blend非常适合创建动画。
Blend 2.5 Preview可以免费下载。
我喜欢Designer WPF博客,该博客提供了一些不错的教程,介绍如何在Blend中做WPF。
学习曲线很高,但是那里有很多非常好的资源。而且,MSDN文档和SDK示例(如已经提到的)非常好。
不过,对我们有帮助的一件事就是只是提前承认学习曲线,并且在没有意义时不要灰心。在我们甚至可以做一些基本的事情之前,确实有很多概念需要"摸索"。
已经提到的WPF书籍以其自己的方式都是有价值的。我的个人经验是,我首先获得了《 WPF Unleashed》的副本,并尝试无济于事。直到我拿起Charles Petzold的Application = Code + Markup并通读其中的一些内容……才开始理解WPF Unleashed。但是,在概念真正陷入困境之前,我的大脑需要细节。
Tim Sneath拥有很多WPF博客作者,我发现他们很有价值,它们可以吸引到WPF社区:
WPF博客
我的必读列表中的一些博客:
- 罗布·雷莉亚(Rob Relyea)
- WPF博士
- 乔什·史密斯(Josh Smith)
- 罗比·英格布雷森(Robby Ingebretsen)
- 凯文·摩尔
- 查尔斯·彼得佐德(Charles Petzold)
- 帕万·波迪拉(Pavan Podila)
我要做的另一件事是获取WPF博士的摘要库(位于此处)。这是学习一些基本管道类型概念(如依赖项属性,路由事件和路由命令)的极好方法。
最后,我将获得Blend的副本(v2.5仍处于beta版本且免费),并使用该副本生成xaml,然后深入研究该生成的xaml以了解我们在Blend中所做的工作,并映射到WPF API。
希望这可以帮助。祝你好运。
尽管已在上面列出,但我想重申一点。
Kaxaml绝对是最好的,最好的宽松xaml编辑器。它具有一个片段库,IntelliSense,拆分视图,一个xaml洗涤器(漂亮的打印件)等。
我只希望我们可以连接一些程序集(我们可以从xaml中引用)...
罗比·英格布雷森(Robby Ingebretsen),你真摇滚。
24小时自学WPF http://ecx.images-amazon.com/images/I/41ZM9hbeGoL.BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01.jpg
http:// 24小时内自学WPF
我发现真正对我有帮助的一种资源来自jfo的编码:http://blogs.msdn.com/jfoscoding/articles/765135.aspx
该文档的标题为" WPF为那些了解WinForms的人",这恰好是我去年的职位!
我还谦虚地建议我们看一下我的博客,关于WPF的2,000件事,我每天都会在WPF上发布一条信息。该博客从基本原则开始,逐渐进入更高级的主题,因此,作为初学者,它是一个不错的起点。