32

I am using using VS2010 and if I have a form open in designer mode and run my application the designer tab will no longer show the form designer but instead an error will be displayed (and it is only fixed by restarting the IDE) saying:

"To prevent possible data loss before loading the designer, the following errors must be resolved:"

1 Error:

"The designer could not be shown for this file because none of the classes within it can be designed. The designer inspected the following classes in the file: ##### --- The base class ##### could not be loaded. Ensure the assembly has been referenced and that all projects have been built"

I then shows the following call stack:

at System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.EnsureDocument(IDesignerSerializationManager manager)
at System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager manager)
at Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad(IDesignerSerializationManager serializationManager)
at System.ComponentModel.Design.Serialization.BasicDesignerLoader.BeginLoad(IDesignerLoaderHost host)

Any help is greatly appreciated this is really annoying.

Thanks,

Joel.

Uwe Keim
  • 39,551
  • 56
  • 175
  • 291
Joel
  • 403
  • 1
  • 5
  • 5

18 Answers18

36

I get this visual studio bug too now and then, and I deeply ignore the error text, instead I do the following:

  1. Close the Design-tab
  2. Reopens the Design mode by double click in Solution Explorer, or by right clicking Source code tab and select View Designer
  3. Suddenly everything works again!

If not helping, you may have to change bullet 2 into: Close and restart Visual Studio.

Maybe this can help you out.

Jack Johnstone
  • 1,485
  • 4
  • 16
  • 21
7

I usually close the visual form, rebuild the solution, right-click then select "view designer" in the form code.

Very, very annoying. I am thinking of dropping back to VS2008.

Uwe Keim
  • 39,551
  • 56
  • 175
  • 291
MarkusR
  • 81
  • 1
  • 3
4

Close the form. Clean the solution. Rebuild the solution. Reopen the form. Worked for me when nothing else would.

KingOfHypocrites
  • 9,316
  • 9
  • 47
  • 69
2

I'm able to avoid restarting VS by doing the following

  1. Add a new user control
  2. Drag and drop some of your custom user controls on to it (If it gives you an error, build the solution again).
  3. Reopen your control.

In my case, I have a winforms project with several custom controls that are used by other custom controls. Whenever I open some of those custom controls, I get a the "The base class ..." error. Adding a new custom control, building the project and then adding some custom controls from my project to the new custom control allowed me to open the custom controls that were giving me the "The base class ..." error.

UPDATE: I think I found the problem. My controls were not 'added' properly to the csproj file. In the csproj file, the files for partial classes of UI controls/components need the 'DependentUpon' attribute.

E.x.: before:

<Compile Include="Windows\Forms\DataGridView.cs">
    <SubType>Component</SubType>
</Compile>
<Compile Include="Windows\Forms\DataGridView.Designer.cs" />

after:

<Compile Include="Windows\Forms\DataGridView.cs">
    <SubType>Component</SubType>
</Compile>
<Compile Include="Windows\Forms\DataGridView.Designer.cs">
    <DependentUpon>DataGridView.cs</DependentUpon>
</Compile>
Uwe Keim
  • 39,551
  • 56
  • 175
  • 291
Hasani Blackwell
  • 2,026
  • 1
  • 13
  • 10
  • +1 to this - I noticed that mine had "corrupted" itself and any custom controls threw this error. I had a backup of my vbproj file and compared the two and fixed the errors. – Bitten Fleax Jul 26 '18 at 15:12
2

I had this same issue and I was able to resolve this by creating new project and then compiled and run the project and then I imported all the files and ran the project again and automatically it was working again did nothing extra.

Riaz
  • 21
  • 1
1

I had a situation where a custom user control appeared to be creating the error (not sure why) so I removed references to the user control from the form and the error went away.

John M
  • 14,338
  • 29
  • 91
  • 143
0

I had the same problem using A control With Generics

      MvpUserControl<Presenter,IViewMode> : UserControl

what I do it's Remove the Reference and Add again, Clean and Rebuild the Solution I Hope this can be useful for anybody else

Kmilo
  • 55
  • 6
0

I had the same problem with VS2010 SP1. Finally using Windows Update I saw some updates for Visual Studio and .Net, I installed them and is not happening any more.

0

Old post, but for those whom may find this...

Just ran in to this error and for me it was relatively simple fix.

Found that it may have something to do with the names of your classes, and renaming the problematic class to a higher order. That is the alphabetical order it appears in the assembly (Where A is higher than Z).

MSDN Article

Good luck.

JSmith
  • 1
0

This error occur if the Form class is not a first class in the file, for example if there is some helper class at the beginning of the file.

To solve this issue, move all other classes except Form class to the bottom of the file.

Tomas Kubes
  • 23,880
  • 18
  • 111
  • 148
0

Don't code in Form1.Designer.cs. Move your logic to Form1.cs (hit F7 on Form1.cs [Design] tab).

Waldemar Gałęzinowski
  • 1,125
  • 1
  • 10
  • 18
0

"In the project file (.vcxproj), locate the entry for the target Framework version. For example, if your project is designed to use the .NET Framework 4.5, locate v4.5 in the element of the element. "

(Microsoft)

In my case the "v4.5" didn't exist so I add it, and everything is good now.

Community
  • 1
  • 1
0

I tried clean solution and re-build solution and worked for me. Hope this help!

Tiến Dũng
  • 199
  • 1
  • 2
0

This solution works fine, please follow these steps below to solve your problem:

  1. Check the reference if load correctly
  2. Clean the solution and rebuild again
  3. Clean the project and rebuild again
  4. Clean your project and open it again
Maximilian Ast
  • 3,369
  • 12
  • 36
  • 47
Kamel nazar
  • 1
  • 1
  • 1
0

It seems that after installing SP1 the problem has gone away.

Thanks for your help everyone.

Joel
  • 403
  • 1
  • 5
  • 5
0

I was login as administrator in visual studio . I just close my visual studio and again open it without run as administrator and my problem is solved

fazal
  • 9
  • 4
0

I ran into this today after upgrading VS2019. I went to properties, configuration tab, and set the projects to Configuration = Debug, Platform = Any CPU. Then it worked.

Eric Moon
  • 101
  • 3
0

I faced this issue.

To prevent possible data loss before loading the designer, the following errors must be resolved:

I found solution for this problem:

Close all open tabs, and refresh (sync active documents) the solution.

enter image description here

For more information, you can see this video : https://youtu.be/Q3x2HBd7BDs

Ramil Aliyev 007
  • 4,437
  • 2
  • 31
  • 47