2010-03-16 4 views
0

Ok, alors est-il préférable de créer mes propres composants (soit en les héritant des composants existants, soit en les créant de toutes pièces) ou d'utiliser ceux qui sont fournis par défaut? Je demande cela sous le parapluie de l'évolutivité, les frais généraux et d'autres facteurs que je contribue à chacun des choix.Composants personnalisés et composants par défaut dans la conception graphique. Lequel est le plus pratique? (.NET)

MISE À JOUR: Désolé si je suis trop vague. Je ne sais pas vraiment comment m'expliquer mieux. N'est-ce pas une bonne idée d'hériter de chaque composant par défaut? Par exemple, que se passe-t-il si je dois concevoir une application assez volumineuse et que, par exemple, j'ai besoin de changer le format d'affichage sur un DateTimePicker. Ne vaudrait-il pas mieux anticiper et hériter et utiliser le composant hérité au lieu des valeurs par défaut? Mais, ne serait-il pas ajouter beaucoup de frais généraux dans les petites applications?

Répondre

2

Ceci est une question difficile à répondre, et peut être fermé comme subjectif. Cela dépend de ce que vous faites, et si la capacité de mise à l'échelle d'un composant existant est inférieure à celle de l'emballage d'un nouveau composant entier (hérité ou non) et de tout le travail de support impliqué. Par exemple, supposons que nous ayons une zone de texte dans laquelle nous voulons toujours que le texte soit vert. Nous pourrions juste définir la propriété de police pour la zone de texte et être fait, ce serait simple et direct, et pas besoin d'un composant personnalisé. Cependant, que se passerait-il si nous voulions que ce soit toujours vert, ne pas être modifiable et être appliqué indépendamment de ce qui pourrait être mis dans la zone de texte? Cela nécessiterait plus de code et une certaine quantité de travail de conception dans l'application, ou nous pourrions créer un composant personnalisé pour faire ce travail pour nous, et le faire apparaître comme une zone de texte pour tous ceux qui l'implémente. Simplifier le code déployé par essence (en le cachant à l'intérieur du contrôle) et rendre le design global plus propre. Si nous avons seulement besoin de cette zone de texte au même endroit, elle est probablement trop lourde, mais si cette zone de texte est essentielle pour notre application, elle pourrait en valoir la peine.

2

Je ne pense pas que votre question ait une certaine réponse - cela dépend de la fonctionnalité dont vous avez besoin. Si des composants standard répondent à vos besoins, je ne pense pas que la création de vos propres composants ait un sens.

Questions connexes