May 2008 - Posts
I've blogged about this back when it was in early CTP. Now, I'm happy to see that the XML team has shipped their WPF based XML Schema Explorer in VS2008 sp1 beta. See "New XSD Functionality in VS 2008 SP1 Beta".
It is nice to be able to say that part of VS is built with WPF...(beyond the WPF Designer bits which had to use WPF).
My latest links about WPF (Apps, Controls, 3.5sp1 beta, HowTo, for LOB), Silverlight, XAML and URLs
WPF Apps
- Expression Blog: Deep Zoom Composer Update. Yet another WPF based application shipping from MS. This one helps people author content for <MultiScaleImage /> in Silverlight 2.
- Microsoft Pro Photo Tools "provides a set of tools for photographers to perform various tasks with their images—including RAW captures. The current version enables you to quickly geotag your photos, view and edit metadata, and more, leveraging the power of Windows and Microsoft Live Local."
- WPF Showcase - not sure if I've ever pointed people toward the WPF Showcase on WindowsClient.net. Lots more apps up there!
- JMC Photo Gallery - freeware to work/display with your photos. Code available on CodePlex.
- State Street Gang: RegEx and WPF - a WPF app to help you understand RegEx
- Qunatum Bit Designs: QbColorViz - a small WPF app to help you map Color names to their look.
WPF Controls
WPF CTP (.NET Framework 3.51sp1 beta)
WPF
- GeekValley: Microsoft Releases Three Updated Foreign Language ClearType Fonts for Windows XP. Sounds like this will improve small font rendering with WPF for Japanese, Korean and Chinese characters.
- Valerio.net: Digging into the .NET Framewok Code. Matt discusses using Reflector to view or another technique to directly debug .NET framework code in VS.
- Goings On In the Land Of Eclipse includes the following: "Currently Eclipse has 3.4.M7 is available for download. One of the most interesting features is that the user interface now supports WPF on Vista. The Java toolkit SWT now has a WPF back-end, you can see its resolution independence if you look at it through the Magnifier application on Windows. Also, in general, the user interface looks much more integrated into the native platform."
- Mike Hillberg: Model-see, Model-do, and the Poo is Optional. Data visualization shouldn't forget that you need to do things with data as well...
- Daniel Moth: XAML: Level 100. Goes through some of the basics of XAML with WPF in mind. Then proposes what level 200, 300, and 400 are...
- Jeffrey Snover, PowerShell architect: The Future is Here Today. Points to Jaykul's work with PowerShell/WPF...
- James Brundage, PowerShell team member: WPF & PowerShell – Part 1 ( Hello World & Welcome to the Week of WPF ). Love to see the discussion of using WPF from the PowerShell 2.0 CTP.
Microsoft
WPF How To
- Frank La Vigne: Making Your WPF Applications Speak - I hadn't used System.Speech in a long time. My son and I built a little app to help test him with his spelling words. Thanks Frank for reminding me of System.Speech...
- Mike Hillberg: Binding to anonymous types in an XBAP or Silverlight app. Using Linq queries + databinding in WPF/Silverlight...this is a good post to read.
- MSDN Magazine (Shawn Wildermuth): Build More Responsive Apps with the Dispatcher
- ChristophDotNet: WPF UI Update from Background Threads
- US ISV Dev Team: Map Your Data Part1 & Part2
- SerialSeb: Reflecting on my last project. Reflects on his last project with a number of interesting points about WPF/XAML
- Genesis Conduit: WPF, Images and DPI Independance
- Kirupa Chinnathambi: Tutorial: Modifying Animations in C#. I ran into Kirupa, an Expression Program Manager, at the local gym on the basketball court a few weeks ago. He has been doing some pretty cool things...
- ILOG Visualization .NET Blog: Displaying a MS Project XML file using Diagrammer for .NET, WPF, and LinQ Part1
- Martin Bennedik: A fast font drop down list. Remember, combobox is much faster if you change the ItemsPanel to VirtualizingStackPanel. We didn't make this change by default due to app-compat considerations.
- Karsten: Portfolio as WPF and ASP.NET. Karsten posts an app that show a list of all the apps he has built (or helped build) and does it as an XBAP or ASP.NET generated HTML page.
- Dan Rigsby: Margins and Padding in WPF. If I recall correctly, we did this so you could have x1, y1, x2, y2. When you set thickness with just two numbers (x, y), you are setting the horizontal size then the vertical size. When you set thickness with just one number (Z), you are setting all four sizes to the same value. I agree it isn't easy to keep straight all the time, but x1,y1, x2, y2 keeps it good for me...
WPF for LOB
Silverlight
XAML
- This Silverlight Forum discussion reminds me of one of my pet peeves about CLR languages of today. If I know the value of a property as it would be represented in XAML, it isn't always easy to get that code written...
URLs
We're very excited that we're improving the installation experience on machines without .Net 2.0 and later with a new subset of the .NET Framework (~26MB) which we are introducing in .NET Framework 3.5sp1 called the Client Profile.
- Troy Martez (the Program Manager on the WPF team that has been leading our efforts in this space) just blogged "Introducing the .NET Framework Client Profile".
- In addition Justin Van Patten, a Program Manager on the CLR team, blogged ".NET Framework Client Profile" which includes the list of all the assemblies that make up the Client Profile and discusses some more details.
We hope this helps your customers have better experiences with your WPF or Winforms application.
Yesterday I did a brief post about "WPF 3.5 & VS 2008 SP1 Beta". Now I follow it up with a list of content about this release. I plan on growing this list as new content appears, so come on back...
Channel9 Videos
Overview Blogs
Feature Drilldown Blogs
WPF Tools
- Expression Blend 2.5 Update - The beta of .NET 3.5sp1 has a problem that the Blend team has worked around...but you need this special build. This special build is fine to replace any of your uses of 2.5 preview, if you'd like.
Documentation
Scott Guthrie just did the launch blog post about the .NET Framework 3.5 SP1 beta & VS 2008 SP1 beta. Tim Sneath also add a number of other great details with "Introducing the 3rd major release of WPF". Lots of great stuff for WPF developers and users. Go check it out!
We'll be happy to help answer questions for this release on the WPF Forums. Perhaps it makes sense to have a great title that starts with "3.5sp1:"...
Watch for some Channel9 content this week as well as various blogs going into details.
I'll try to keep you apprised of the latest content out there...by growing a list of links on this post, or having new posts.
WPF release history
- November 2006 - .NET Framework 3.0 ships.
- November 2007 - .NET Framework 3.5 & VS 2008 ships.
- Summer 2008 - .Net Framework 3.5 sp1 & VS 2008 sp1 will ship.
WPF Controls
- Emphess.Net: A MenuKiller Control - this article is a work in progress detailing how to build a new paradigm for menus...
- Filipe Fortes: BindableRun - I recently had to point this out to somebody inside of Microsoft. Ever wanted to databind to a <Run />
- Righthand blogs: Developer Express steps into WPF (DXCharts for WPF)
WPF How To
WPF Tools
WPF Frameworks
WPF Books
Silverlight
Scripting/DLR
Microsoft Office
Back in January we posted v0.1, now we just posted a new version of the WPF Application Quality Guide (v0.2) on WindowsClient.net.
In light of the rapid adoption of the WPF and the continuous requests from partners and customers, the WPF team at Microsoft is happy to present the second preliminary release of the “WPF Application Quality Guide”. We plan to release the Guide in stages, updating and fine-tuning the content, based on feedback provided by you. This second release contains more examples that illustrate how to find the AutomationElement object by using UI Automation; introduction to the WPF programming stack and software testing; high level overview of test methodology, planning, and strategies; visual verification testing; media testing; verification of animations and other transitions; performance best practices resources; security testing considerations; a list of tools for creating, debugging, and testing WPF applications; and additional topics in the Appendix about resources for WPF data binding and debugging, and about WPF interoperability with Win32 and Windows Forms.
We appreciate your feedback, so please leave comments below. Specifically, please let us know what you think of the way we have organized the content and the ease of navigating through it.
The WPF Team
Ivo blogged about this as well, including how to best give feedback at: http://blogs.msdn.com/ivo_manolov/archive/2008/05/08/8474130.aspx
In "WPF, from this to that...Wow!", Glenn discusses how the PNP team working on "Prism" involved a designer and moved their application from the image on the left to the image on the right.
Clearly, using a designer can do great things for websites...and now for Applications as well. I'd like to see WPF tools help make more of this attainable for developers who are working on their own as well.
The curriculum for this event that Karl and Josh are leading in Charlotte, NC on May 17th, 2008 sounds great:
http://karlshifflett.wordpress.com/2008/04/06/may2008codecamp/
Introduction
Before diving into WPF, first briefly get to know Josh and Karl and then have quick overview of what we will cover throughout the day.
WPF UI Architecture
Buildings must rest on a firm foundation in order to avoid falling over. The same holds true for a complex application’s user interface. This session covers fundamental topics necessary for creating a solid foundation upon which large, dynamic, user-friendly business applications can grow.
Data Binding
WPF is all about data binding. It is a core feature of the WPF framework, and professional WPF Developers must thoroughly understand it to be productive. This session reviews the fundamentals of WPF data binding and shows how to leverage data binding in real-world user interfaces.
WPF-Friendly Business Objects
The user interface is just one part of a smart client application. Enabling other parts of your system to leverage the rich capabilities of WPF requires some extra planning and foresight. This session explains how to create business objects that work well with WPF.
Advanced Data Binding
Business data is complicated. Displaying, editing, and validating complex data requires the use of advanced data binding techniques. This session shows how to use the features of WPF data binding that enable Developers to manage the complexity of their data.
WPF Tools & Performance Testing
The WPF community is full of great free utilities and tools that make it easier to program in WPF. This session shows how to use many of the tools, including several tools that aid in testing the performance of a WPF user interface.
MVC and Unit Testing
The Model-View-Controller and Model-View-Presenter patterns are time-tested, developer-approved solutions for creating modular, loosely coupled application architectures. One of the key benefits of using those patterns is that the system is much easier to unit test. This session dives deep into how you can implement MVC in a WPF application, and how to create unit tests for the Model and Controller.
I've blogged about PowerShell in the past:
Now, I'm excited to see a few new things in their CTP for PowerShell2:
- PowerShell2 CTP includes the ability to run in STA mode (Single Threaded Apartment model). See "WPF from PowerShell - A Splash Screen" from Huddled Masses
- Included in the CTP is a "Graphical Windows Powershell" (gpowershell.exe) that I believe is a WPF application. I don't know how it compares with other PowerShell consoles, but I'm always excited to see more WPF apps shipping...

Very excited about the great new stuff that the Expression team is now shipping. Another great release - eat, drink and build with XAML!
From the Press Release
• Expression Web 2 adds support for PHP and Adobe Photoshop import based on customer feedback.
• Expression Blend 2, in addition to Silverlight support, adds vertex animation and an improved user interface with a new split design/XAML view.
• Expression Design 2 adds improved exporting functionality including the ability to export slices.
• Expression Media 2 is a robust digital asset management solution for photographers and other creative professionals. It adds support for the latest file formats including RAW, provides geotagging functionality, and is supported by Microsoft Office 2007 and Microsoft Office for Mac 2008.
• Expression Encoder 2 is now a core offering of the suite. It allows creative and Web professionals to optimize almost any type of video content quickly for publishing on the Web, either in streaming video, rich-media advertising or other Web 2.0 projects.
microsoft.com/expression content
Happy to see the new Beta of Yahoo! Messenger for Vista adds Voice and SMS! That post has a summary of new improvements for this WPF application, download link, and a video walk through of using it.
dotnet mania (Eric Burke) also adds a bit more info about the release in "we are live! (again)"...including the fact that they've focused on startup time (by doing less and loading less code at startup.), have updated many visuals, have internationalized to de-DE and zh-TW, added voice and SMS, etc... He also recommends Vista SP1 (or at least a QFE)!
Congrats to Eric & the team @ Yahoo!