This is intended as a quick guide to the major breaking changes that will affect Windows Presentation Foundation applications, rather than providing an exhaustive list:

  • Schemas have changed for WPF and XAML. Instead of:
    http://schemas.microsoft.com/winfx/avalon/2005
    use:
    http://schemas.microsoft.com/winfx/2006/xaml/presentation
    Instead of:
    http://schemas.microsoft.com/winfx/xaml/2005
    use:
    http://schemas.microsoft.com/winfx/2006/xaml
  • We've tightened up the definition of Grids - make sure you wrap ColumnDefinition and RowDefinition elements within a corresponding Grid.ColumnDefinitions or Grid.RowDefinitions element. (Previously you couldn't use this syntax within templates.)
  • SinglePageViewer is now FlowDocumentPageViewer (this makes sense, since the viewer is used for FlowDocuments!)
  • The relative source binding syntax has changed: replace
    {Binding Path=foo, RelativeSource=/TemplatedParent}
    with
    {Binding Path=foo, RelativeSource='{RelativeSource TemplatedParent}'}

UPDATE: Karsten and I are less well synchronized than normal this week since we're temporarily in different continents. He's posted a separate list of breaking changes on his blog. Check both locations out - he's got a few that I don't have and vice versa.

UPDATE 2: Rob has a nice tool that makes some of these updates automatically. He also mentions the external assembly referencing breaking change (another one I missed - doh!)