Le contrôle utilisateur bloque toujours Visual Studio
Je suis en train d'ouvrir un contrôle utilisateur dans l'une de nos projets. Il a été créé, je crois, dans VS 2003, et le projet a été converti en VS2008. Je peux afficher le code bien, mais quand j'essaie de charger la vue du concepteur, VS ne répond plus et je dois le fermer avec le gestionnaire de tâches. J'ai essayé de laisser tourner pendant plusieurs minutes, mais il ne fait rien. J'ai couru "devenv /log", mais n'ai pas vu quelque chose d'inhabituel dans le journal. Je ne peux pas trouver un message d'erreur spécifique de n'importe où. Toute idée de ce que peut être le problème? Est-il un léger mode d'édition, que je pourrais être en mesure d'utiliser ou quelque chose?
La raison que j'ai besoin d'avoir un coup d'oeil à la représentation visuelle de ce contrôle est de décider où insérer les nouveaux composants.
J'ai essayé de googler et de la recherche, mais soit je ne sais pas quoi chercher ou il n'y a rien à ce sujet. Toute aide est appréciée.
(La chose la plus étrange est que le contrôle de l'utilisateur semble à la charge de l'amende dans un autre projet dont les références, mais VS se bloque dès que j'ai encore tellement comme le cliquer dans ce projet.)
MODIFIER
Le contrôle de l'utilisateur est un wrapper de la 3ème partie de l'éditeur HTML...donc pas exactement le genre de chose qui accède à une base de données.
J'ai juste essayé de mettre le contrôle sur un nouveau projet et il s'est écrasé dès que j'ai traîné sur la forme.
source d'informationauteur NickAldwin
Vous devez vous connecter pour publier un commentaire.
J'ai résolu mon plantage de designer à l'aide des techniques décrites ici:
Une bonne Façon de Débogage de Visual Studio Designer Erreurs
ET
Il semble que la méthode Load() de UserControls entrait analysé par le concepteur. Mettre initialisations et d'autres codes suspects dans une si - boucle - la vérification de IsDesignMode garde le concepteur de lecture de code qui va se bloquer ....
--mise à jour: en regardant en arrière maintenant, tous les la plupart des choses résolu quand je overthought /refonte de la conception de l'application.
Votre contrôle utilisateur peut posséder une propriété écrit comme ceci:
Remarque que la valeur retournée par obtenir est la propriété elle-même. Cela se bloque VStudio 2008 lors de la tentative de voir les propriétés du contrôle, ce qui arrive aussi lors de l'ajout de la commande (par glisser-déposer ou autre) à un Formulaire.
Comme l'a souligné NickAldwin, cela ne génère pas d'avertissement du compilateur ou de l'erreur.
Se bloque comme ceux-ci sont généralement associés à la mise en réseau. Une base de données peut-être. Vous avez à regarder dehors pour le code qui s'exécute à l'intérieur de l'objet UserControl au moment de la conception. Non seulement le constructeur, également à la Charge de l'événement, les minuteries, les OnHandleCreated, OnResize, etcetera. La façon d'éviter l'exécution d'un code par les tests de la propriété DesignMode, ne pas faire quelque chose de dangereux quand il est vrai.
Votre ultime solution de repli est déboguer le code au moment de la conception avec une autre instance de Visual Studio.
Pour le suivi de l'utérus post, j'ai trouvé le code suivant afin d'aider et de bloquer VS à partir de la plante et de la lecture de la fonction onLoad.
Je ne peux pas répondre et ne voulait pas ajouter un nouveau commentaire. Vous pouvez utiliser la syntaxe suivante dans la méthode de Chargement et d'arrêter de VS lire et de s'écraser. Ceci a été pris de cet article
J'ai eu le même problème. Dans mon cas, le problème est (je pense) que j'ai été l'initialisation d'un membre de la matrice de dans la déclaration au lieu de dans le constructeur. L'erreur a été que la la VisualStudio projet pour mon application immédiatement écrasé quand j'ai essayé d'utiliser le contrôle personnalisé de ma lib qui a eu la "mauvaise" de la déclaration.
C'était frustrant parce que mon composant personnalisé lib compilé sans erreurs.
Brooke
code qui est tombé en panne:
solution
M'aide à changer de Cible Cadre de ".Net Framework 4 Client Profile" de ".Net Framework 4" dans les paramètres de projet.
Essayer de commenter des parties ou même toute l'constructeur de contrôle et voir si elle se montre. C'est peut-être un autre initialisation échoue, trop.
Après tout ce que vous avez fait, je voudrais aussi essayer de charger le contrôle de l'utilisateur dans un tout nouveau projet, et de voir si il charge correctement; et si c'est le cas, vous pouvez "décider où insérer les nouveaux composants"... juste en pensant à voix haute!
J'ai eu des problèmes similaires lors de la création de mes propres commandes de l'utilisateur de Visual Studio, mais ont été en mesure d'obtenir les commandes de l'utilisateur pour afficher correctement en suivant ces étapes:
Ce sont de jolies choses de base que je parie que vous avez déjà essayé. Juste le jeter là-bas.
Récemment, j'ai eu l'erreur gênante après la création de l'utilisateur le contrôle et l'ont attaché à via le formulaire designer, visual studio 2010, serait toujours crash à chaque fois que le mode de conception de la même forme où l'utilisateur contrôle étaient attachés.
Après la création de nombreuses fois et beaucoup d'expérimentation, j'ai résolu mon problème par:
1 - Ajout d'une nouvelle classe.cs fichier de projet
2 - Déplacement de l'ensemble des classes de support que j'avais ajouté à l'utilisateur le contrôle de lui-même
3 - je pense que c'est le plus important: le déplacement des délégués que les fils des événements sur User_Control de fichiers nouvellement ajoutés.
4 - Supprimé User_Control.La charge de l'événement.
J'espère que cela pourra aider quelqu'un.
Acclamations
J'ai rencontré ce problème. J'Ai un projet(ProjA) qui contient les contrôles de l'utilisateur et un autre projet(ProjB) qui fait référence à ces commandes de l'utilisateur. J'ai trouvé que chaque fois que je tente d'ajouter un utilisateur en particulier le contrôle de la vb.net l'Environnement s'arrête et recharge ma solution.
Cependant, si j'en commentaire le code figurant dans mes contrôles de l'événement LOAD de
et puis reconstruire ma solution, je rencontre pas de problèmes lors de l'ajout de ce contrôle à un formulaire. Il est très étrange que ce problème se produit dans un seul contrôle lorsque j'ai 7 autres contrôles dans le même projet que tous fonctionnent de la même manière avec aucune erreur.
Personnellement, je pense que VB.NET me déteste.