Click here for an overview of all posts in this series.
Ok, so
Day 2 was really interesting, especially because the documentation in the SDK is not very up to date or correct. This required me to be very creative to get things to work. The good thing is that playing around is often the best way to learn a new technology.
During my experimentations I also played around with the Interactive Designer (ID) by copying XAML between VS and ID and creating some animations. ID Shows promise, but it is not quite there yet. The user interface for the timeline is quite basic especially when compared to the Macromedia Flash one. For example it does not seem to be possible to insert frames or easily move (key) frames to a different position without selecting them painstakingly one by one.
One of the things I like is the ability to copy the XAML between ID and VS. For example, I had absolutely no idea how to absolutely position an element in a grid. The easiest way to find this out is to just do it in ID and see what XAML is generated. It turns out that you don't position elements with TOP, LEFT etc properties, but by setting the margin attribute. Unconventional, but there is probably a good reason for doing it this way.
Unfortunately, the moment you add any kind of animation to a scene in ID it no longer seems to be possible to copy the XAML to VS due to some problems with XML namespaces.
I have posted a question on Channel 9 to find a workaround, but have yet to receive a reply. I know I should not copy and paste XAML around, but I just need to know what is going on under the hood.
Anyone who worked through the articles in the SDK I suggested on Day 2 will have noticed that the documentation is not very accurate and up-to-date. Fortunately you can provide feedback to Microsoft's documentation team by clicking on the link at the bottom of each page in the documentation. They are very responsive as I received a personal reply and a thank you in a matter of hours.
The integration of WPF in Visual Studio is coming along quite nicely, but it is not there yet. VS seems to crash more than often, especially when terminating a debug session. The Intellisense list for the objects and elements are also massive. It would be nice if the most common properties and properties that are part of the object itself, not one of the base objects, would be listed in a separate section at the top of the Intellisense window.
Switching to the visual designer for a XAML file in VS also results in errors too often. For example, when the specified source of an image element does not exist then it is not possible to switch to the designer. It would be nice if the offending object would be disabled or skipped.
XAMLPad is quite useful as well for previewing XAML. Unfortunately it is not very happy when event handlers such as 'Click' have been specified, it just refuses to display the file. I would prefer it if these handlers could optionally be skipped as it takes a lot of time to manually remove all these attributes from the XAML.
The VisualBrush element rocks! More about that in the future.
Finally, as these are still early days, you cannot rely on Googling for help. Too few people use WPF or have posted about it. This, naturally, is just a matter of time.