2009-07-25 14 views
2

lorsque je tente de cliquer sur l'onglet concepteur pour obtenir la vue de concepteur, je reçois cette erreur:ne peut pas voir la vue de concepteur dans Visual Studio 2008 C# Windows Forms raison d'une erreur bizarre

To prevent possible data loss before loading the designer, the following errors must be resolved:
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: Form1 --- The base class 'System.Windows.Forms.Form' could not be loaded. Ensure the assembly has been referenced and that all projects have been built.

Je Je voudrais entrer dans le concepteur et je n'ai aucune idée de ce qui ne va pas. Mon code Form1 ressemble à ceci en haut:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Text; 
using System.Windows.Forms; 
using System.Drawing.Drawing2D; 
using System.Diagnostics; 

    namespace foobar 
    { 
     public partial class Form1 : Form 
     { 

     List<CharLabel> allChars = new List<CharLabel>(); 

     public Form1() 
     { 
... etc ... 

Des idées?

Répondre

2

Lorsque vous modifiez l'espace de noms ou un autre élément dans une classe partielle (comme Forms) directement à partir de l'éditeur de code, vous faites une invitation à la folie. Comme son nom l'indique, une classe partielle est une classe qui est définie "partiellement" sur la vue de code, mais une autre partie est générée automatiquement par VS et c'est l'autre partie de la classe. Dans cette partie, il contient la définition de tous les éléments de l'interface utilisateur, les polices, les valeurs par défaut, etc. Lorsque vous modifiez l'espace de nom dans une partie de la classe, l'autre partie ignore ce que font les erreurs intéressantes. Lors de la modification des espaces de noms, des noms de classes et des noms de méthodes d'événement, utilisez toujours l'option Refactor dans VS.

Dans votre cas, je ne serais probablement revenir à l'ancien nom qu'il avait, et ensuite utiliser l'option Refactoriser VS fournit (Mettez en surbrillance le nom du composant, cliquez sur Ricgh, refactor-> renommer)

Hope this aide.

+0

Merci beaucoup. La suppression complète des fichiers, l'ouverture des copies d'origine et l'utilisation du paramètre Refactor pour définir le nouvel espace de noms correct, puis le redémarrage de Visual Studio ont été très efficaces. – cksubs

2

Avez-vous vérifié la recommandation dans le message? Autrement dit, avez-vous vérifié que System.Windows.Forms.dll est référencé dans votre projet?

Pour ajouter la référence s'il manque procédez comme suit

  • Cliquez: Voir - > Explorateur de solutions
  • Clic droit sur le nœud Références et sélectionnez « Ajouter Référenc »
  • Aller au .Net Tab
  • Faites défiler jusqu'à ce que System.Windows.Forms.dll
  • Sélectionnez que et cliquez sur OK
+0

Je n'ai pas (et l'erreur ne fait aucune mention de la partie ".dll" donc je ne savais pas à regarder ça). Comment pourrais-je faire cette référence? La chose à ce sujet est qu'il commence tout à coup à donner l'erreur, puis un redémarrage peut résoudre un peu, etc Merci pour l'aide. – cksubs

+1

@cksubs, je viens d'ajouter des étapes pour que cela soit ajouté à votre projet. – JaredPar

+0

Je suppose que j'aurais dû vérifier pour voir s'il était là en premier, mais j'ai simplement ajouté le fichier via vos étapes, et il apparaît dans l'arborescence sous Références dans l'Explorateur de solutions, mais je reçois toujours la même erreur pour ouvrir le concepteur. D'autres suggestions? Blabla. – cksubs

0

Je l'avais aussi ressenti, je l'ai résolu en corrigeant l'absence de bibliothèques référencées.

Vous pouvez consulter votre liste d'erreurs.

Questions connexes