WPF and Silverlight Designer for Visual Studio 2008 FAQ

  1. What Hotfixes should I make sure I have installed to work with the designer in Visual Studio 2008 Service Pack 1?

    Based on customer feedback and issue analysis, we have shipped several Hotfixes which affect users of the WPF and Silverlight Designer in Visual Studio 2008 which you should consider installing:

    Please note that for 64-bit users, because Visual Studio is a 32 bit program even when installed on a 64 bit machine, you should install the 32 bit versions of the Visual Studio hotfixes (KB958017 and KB963035). The 64 bit installer for the CLR hotfix KB963676 will update both 64 and 32 bit CLRs on a 64 bit box.

    KB958017 (rollup for several WPF designer issues, do not install if you have any release of the Silverlight Tools for Visual Studio 2008 installed as they include this set of fixes)


    KB963676 CLR fix for "Grant Set Exception" crash that causes Visual Studio to crash intermittently when editing using the designer


    KB963035 Fix for VS Hangs with VS Busy when working in the designer


  2. What do I do if I lose IntelliSense in the designer?

    There is a known issue when installing certain Windows SDKs alongside Visual Studio 2008. Please refer to this article http://social.msdn.microsoft.com/forums/en-US/windowssdk/thread/dd6f14ed-e582-4b49-9358-64f2afaec151/ for steps to fix the issue.

  3. I installed a Visual Studio 2008 Express Edition, then installed Visual Studio 2008 Standard/Pro edition, now I get a package load failure for Microsoft.VisualStudio.Xaml when I try and open XAML files. How do I fix this?

    If you have installed Visual Studio Express (VB, C# or Web) , then patched it to Service Pack 1, then installed Visual Studio 2008 standard or pro RTM editions, your installation is in a broken state (you'll see package load failures for Microsoft.VisualStudio.Xaml when trying to open a WPF project XAML file). The full error message looks like this:

    Package Load Failure

    Package 'Microsoft.VisualStudio.Xaml' has failed to load properly ( GUID = {E58C2A8B-BCC4-4559-AD59-D62EB6D58A22} ). Please contact package vendor for assistance. Application restart is recommended, due to possible environment corruption. Would you like to disable loading this package in the future? You may use 'devenv /resetskippkgs' to re-enable package loading.

    To fix the problem, you can run the standalone Visual Studio 2008 Service Pack 1 installer. This should leave both the Express SKU and the Standard SKU with a working WPF designer, service packed to SP1.

    Note: if you are using Silverlight 3 Tools for Visual Studio 2008 as well, you will need to install these after running the Service Pack 1 installer.   This information has now also been published as http://support.microsoft.com/kb/2292664 

  4. I use references to static resources in my app.xaml, but my controls will not load in the designer – what can I do?

    This is a known limitation of the Visual Studio 2008 Designer. Even though your XAML is correct and will run properly, the designer cannot load static resources defined in app.xaml. This limitation has been removed in Visual Studio 2010.

    If you cannot move to Visual Studio 2010, your options are limited, and all have some disadvantages:

    1. Change all your StaticResouce references to resources defined in app.xaml into DynamicResource references
    2. Copy/move your referenced resource down into the Window.Resources section from app.xaml (this is suboptimal for a resource that needs to be shared between windows)
    3. Move the resource into a resource dictionary, and reference that resource dictionary from the window directly rather than via app.xaml (this not a bad solution for many cases although it will force you to add a reference in every window that uses it, to the shared dictionary)
    4. Live with the designer not loading pages that do this (depending on how much use you make of the visual designer this will be more or less irritating). You can hide the designer for pages that do this, and just see the XAML view, by double-clicking the splitter that separates the XAML and designer panes, and Visual Studio 2008 SP1 will remember that setting next time that particular window is opened.