How to resolve the "Could not create an instance of Type" error when "Reloading the designer" in Visual Studio 2008?
So, I recently started trying to implement the application I am developing using an MVVM model.
However, I ran into this annoying problem where when I have my main window’s XAML code including this line:
<uc_treeview:PluginTreeViewControl Margin="0,0,0,29" MinWidth="240" />
My PluginTreeViewControl object looks as follows:
using System.Collections.ObjectModel;
using System.Windows.Controls;
using System.Windows.Input;
using LANDesk.HealthCheck.PluginOutput;
using LANDesk.HealthCheckViewer.LoadOnDemand.Sections;
namespace LANDesk.HealthCheckViewer.LoadOnDemand.PluginTreeView
{
public partial class PluginTreeViewControl : UserControl
{
//readonly GroupViewModel mGroup;
public PluginTreeViewControl()
{
InitializeComponent();
Output o = new Output();
OutputViewModel viewModel = new OutputViewModel(o.PluginGroups);
base.DataContext = viewModel;
}
}
}
So I found that the lines after the InitializeComponent() function are causing my attempts to “Reload the designer” to fail. If I comment them out, the designer reloads. Of course, then if I have to uncomment them before compiling or debugging, and comment them again, when working in the Designer.
So after a while a thought came to me that maybe their is some type of “if” statement that would be true for the designer but not for runtime. So I researched and found this: DesignerProperties.GetIsInDesignMode Method
After reading about this, I changed my code in my Constructor to this:
public PluginTreeViewControl()
{
InitializeComponent();
// This "if" block is only for Visual Studio Designer
if (DesignerProperties.GetIsInDesignMode(this))
{
return;
}
Output o = new Output();
OutputViewModel viewModel = new OutputViewModel(o.PluginGroups);
base.DataContext = viewModel;
}
And wouldn’t you know it, I have solved the issue entirely. The Designer now reloads just fine (as it doesn’t seem to error) and at run time the “if” statement is always false so the lines I need always run.
Also, the overhead of an “if (DesignerProperties.GetIsInDesignMode(this))” in inconsequential. However, I attempted to remove this overhead in Release builds as follows:
public PluginTreeViewControl()
{
InitializeComponent();
// This "if" block is only for Visual Studio Designer
#if DEBUG
if (DesignerProperties.GetIsInDesignMode(this))
{
return;
}
#endif
Output o = new Output();
OutputViewModel viewModel = new OutputViewModel(o.PluginGroups);
base.DataContext = viewModel;
}
Now, I don’t have a problem with my Designer. This workaround makes me super happy!


Thank you very much.
However your Black theme is more black 😉 I found http://studiostyl.es/ very helpful.
There is 'Son of Obsidian' theme which suits me best, and I even created my own, new style.
You can send your theme there too.
Thanks for inspiration again!
Hi,
Thanks for the great article. I really appreciate this.
I have also noticed wonderful readable font and colors of presented code syntax highlight.
Have you seen such a theme settings for Visual Studio 2008/2010.
I would be really greatful. You know... Winter Holidays are coming soon 🙂
Thanks in advance for any help!
Visual Studio Black Theme