2010-06-15 11 views
0

J'ai commencé à chercher dans le fichier designer d'un de mes formulaires et j'ai remarqué que beaucoup des anciens contrôles que je pensais avoir supprimés sont toujours instanciés mais ne sont pas réellement utilisés sur le formulaire.Existe-t-il un moyen plus rapide de supprimer les contrôles non référencés du fichier du concepteur d'un formulaire?

Existe-t-il un moyen facile de nettoyer ces contrôles du fichier du concepteur qui ne sont pas utilisés? En ce moment j'ai imprimé une liste de tous les champs privés au fond du dossier de concepteur qui référencent les contrôles du formulaire. Je descends la liste un par un en essayant de déterminer si le contrôle est réellement utilisé ou non, puis en supprimant ceux que je trouve ne sont pas sur le formulaire. Le plan du document est utile pour déterminer quels contrôles sont sur le formulaire, mais c'est un processus plutôt fastidieux. Est-ce que quelqu'un a un meilleur moyen?

Répondre

0

Hans 'suggestion of using "Find all references" est probablement la meilleure option. Si, cependant, la majorité de ceux-ci ne sont pas utilisés, vous feriez mieux de commenter tout le bloc de déclaration pour les contrôles dans le fichier .designer.cs, puis en utilisant les erreurs du compilateur pour vous aider à lister les contrôles en cours utilisé, en les décommentant un (ou plusieurs) à la fois jusqu'à ce qu'il se compile à nouveau. Cela vous évitera d'en manquer et utilisera le compilateur pour vous aider.

Cependant, ces deux options seront au moins quelque peu fastidieuses.

1

C'est un peu étrange. Le point de créer un contrôle est d'avoir quelque chose de visible dans l'interface utilisateur, quelque chose avec lequel l'utilisateur peut interagir. Des contrôles inutiles devraient être facilement visibles dans l'interface utilisateur.

Si cela n'est pas clairement observable à partir de l'interface utilisateur, alors ces contrôles définissent leur propriété Visible sur false ou leur propriété Location sur une valeur pour la garder hors de vue. Quelque chose à rechercher. La seule autre façon que vous avez est d'ouvrir le fichier Designer.cs, situé la liste des noms de variables de contrôle et cliquez-droit sur eux un par un. Sélectionnez "Trouver toutes les références" et si vous ne voyez pas un fichier de code source autre que le fichier du concepteur répertorié, il peut être candidat à la suppression. Vous devez ensuite vérifier leurs gestionnaires d'événements de la même manière.

+0

Ouais voir le problème est le code d'initialisation pour les contrôles inutilisés est toujours là cependant. So Find All References renvoie toujours quelque chose pour les contrôles qui ne sont pas utilisés. J'ai été capable de passer à travers tout le dossier à la main, mais c'était assez pénible. Une idée de la façon dont j'ai pu supprimer des contrôles du formulaire sans les retirer du fichier du concepteur? –