Day 2 第二天

Now you get your hands dirty.  Still, you will be relagated to "hello world" and drawing primitives, again humiliating.  But stick with the program.  Learning to crawl before learning to run is really important with WPF.
现在开始准备动手练习。我们还是从简单的Hello World程序开始,跟随我们的联系。学习跑步之前必须要学会爬行。

Who: Developers
What: Do SDK tutorial on
Creating a WPF Application  Or, if you can get your hands on Charles Petzold's Applications = Code + Markup, skip the SDK and work your way through his book. Another option is to do the Microsoft eLearning course, which is free now and will only be $9.99 after ship.
设计者注意:练习SDK指南中的Creating a WPF Application ,或者找找 Charles Petzold的代码,跳过SDK,按照它的书就像练习。另外可以联系微软的Microsoft eLearning course,它可以免费下载或者10美元邮寄。

Who: Designers
What: Do the first half of the Fabrikam tutorials that are part of EID

设计者注意:做Fabrikam 例子中的前半部分。

Who: Developers
What: Do SDK tutorial on
Adding 2D Graphics and Data Binding.  Or, keep reading Charles Petzold's Applications = Code + Markup.
开发者注意:做SDK指导中的Adding 2D Graphics and Data Binding。或者可以练习Charles Petzold的例子。

Who: Designers
What: Do the second half of the Fabrikam tutorial that is part of EID

设计者注意:练习Fabrikam 的EID部分的下半部分。

Who: Developers and Designers not intimidated by mark up
What: Play with the
SDK Viewer Sample
练习SDK Viewer Sample

Day 3第三天

By now you are starting to get it.  But don't get cocky.  You have a long way to go. Okay, maybe I'm not giving you enough credit. Let's give you a test:
到目前,你已经正式开始了。不要骄傲,你还有很长的路要走。OK,可能打击你了,我们来做一个小测验:

--Can you explain the difference between a template and a style in WPF?
--Can you explain the difference between a timeline and a clock when using Animation?
--Why would you use a ContentControl as compared to a UserControl?
--How do you apply resources from EGD into EID?
--What is the relationship between vectors and bitmaps in EGD?
--How do you trigger animations that also trigger media in EID?

--你能否解释模板和WPF中的Style的区别?
--你能否解释时间线和时钟的区别,当使用动画时?
--为什么你使用ContentControl而不是UserControl?
--怎么样把EGD中的资源导入到EID?
--在EGD中,矢量图和位图的区别是什么?
--在EID中,怎样触发动画或者多媒体?

Maybe you can answer all these questions.  But maybe you can't.  Stick with the program...
可能你能回答这些问题,也可能不行。没关系,让我们继续...

Who: Developers
What: Read the following SDK topics on the various sub-systems of WPF:
Fundamentals, Data, Graphics and Media It's the morning, so you are ready for more conceptual knowledge.  Conceptual understanding is key in WPF so you know what happens when, say, you use the layout system or the animation system. It is important you understand the functionality, limits and costs of each WPF subsystem -- as well as how each subsystem works togethers.
开发者注意:阅读SDK中关于WPF各种子系统的主题,如Fundamentals, Data, Graphics and Media。今天上午的课,你应该准备好概念知识。理解概念对于WPF很重要。当你用布局系统或者动画系统时,你最好理解它的功能,局限性和调用了WPF哪些子系统,这些子系统是这么一起工作的。

Who: Designers
What: Go play with EGD.  Do its tutorials.  Play around with exporting to XAML and pulling that into EID and
read this post on how to do it. Watch this channel 9 screencast and download accompanying code that really gets into workflow between tools. If an Illustrator user, try out Mike Swanson's exporter.  If a Fireworks user, try this converter to XAML. Also, realize that you can cut/paste between EGD and Illustrator with some lossiness but pretty accurate nonetheless. 
设计者注意:打开EGD,练习例子。联系导出为XAML格式,导入到EID中,可以阅读这个帮助read this post来完成。看看channel 9 screencast并下载他们的例子。如果是Illustrator用户,试试这个 Mike Swanson's exporter。如是是Firworks用户,试试这个this converter 转换器,转为XAML格式。也可以通过复制粘贴的完成,单可能有些失真。

午饭时间

Who: Developers and Designers Together
What: Plumb through all the samples that are in the
SDK and EID.  Poke around the blogsphere to find other samples. The WPF Community site is a great place to find samples too.  Knowing they are there will be invaluable when you later want to do something.
开发者和设计者都注意:  看看所有的SDK中的例子。再看看blogsphere 中的例子。WPF Community site网站上也有非常好的例子。知道这些例子,对你以后有很大帮助。

第四天

Okay, now you are ready to go out on your own, but with some guidelines.  Come up with a very simple prototype application to try, such as a simple game or simple application.  Maybe try porting an existing application you have written to see how it would be done in WPF. If that is too loose, try extending one of the application samples in the SDK.
OK,准备开始做自己的程序,按照一些指导。从一些简单的程序做起。例如一个简单的游戏或者程序。也可以扩展一下SDK中的例子。

A great model of this is up on http://www.thewpfblog.com.  In that blog, you can see someone real time experimenting with WPF and watch him hit the curve and discover WPF.  Many times, he is taking an existing project he knows and moving it to WPF.
这个网站也有很多文章http://www.thewpfblog.com,其中你可以看看有些人的实时开发工作。大多数,他是把现有的程序转为WPF格式的。

Day 5-第五天

Go back and rewrite whatever you wrote in Day 4.  Invariably, you didn't get it right the first time.  Know that you will rewrite it.  This is a truism of WPF that I continually encounter as do many other folks I've worked with.  You never get it right the first time. 
重复一下第四天的功课。一般来说,第一次做的都不是很好。这种现象我经常碰到,第一次总是做的不够好。

Now, you wrote your app and it performs like crap.  Go read the Optimzing WPF Application Performance paper and then go get familiar with the WPF perf tools  and fix it.  
现在,你写一下你的程序,它可能运行不是很好。来这儿看看优化技巧Optimzing WPF Application Performance paper ,然后再熟悉一下这个工具WPF perf tools ,调整一下你的程序。