Extension de la prise en charge au moment du design
Le .NET Framework fournit une architecture extensible pour personnaliser le comportement et l'affichage des composants et des contrôles en mode design. Cette architecture de prise en charge au moment du design permet aux développeurs de générer des extensions personnalisées au moment du design pour des composants et des contrôles. Les développeurs peuvent personnaliser des comportements au moment du design, fournir des interfaces de configuration de valeurs, générer du code pour l'initialisation de propriétés et tirer parti des services offerts par l'environnement au moment du design.
Par exemple, si vous définissez une propriété d'un type personnalisé sur un contrôle, vous pouvez fournir une interface utilisateur personnalisée ou un éditeur de types personnalisé pour modifier la valeur de cette propriété à l'aide de l'Explorateur de propriétés. Vous pouvez générer une classe appelée concepteur, qui peut gérer divers aspects de l'apparence et du comportement d'un composant ou d'un contrôle au moment du design.
Jadis, la prise en charge de ce type de cas logique spécial pour des composants en mode design était intégrée dans le Concepteur de formulaires et c'était ce dernier, et non l'objet, qui était responsable des fonctionnalités de design. Dans le monde d'ActiveX, par exemple, différents outils proposaient leurs propres concepteurs de formulaires, avec des interfaces utilisateur et des fonctionnalités différentes. Comme un ensemble de fonctionnalités fixé d'un produit ne peut pas tenir compte des besoins de tous les contrôles, les contrôles ActiveX ne possédaient qu'un niveau limité de prise en charge personnalisée au moment du design.
Toutefois, la prise en charge au moment du design des composants du .NET Framework, n'est pas définie exclusivement par un outil de conception tel que Visual Studio. En fait, l'environnement de développement prend en charge l'extension et la définition du comportement au moment du design à l'aide de classes, telles que des concepteurs, qui prennent en charge des composants au moment du design. La prise en charge du comportement en mode design extensible et personnalisable est intégrée au .NET Framework. Des outils, tels que Visual Studio, offrent également toute une gamme de services au moment du design qui peuvent être utilisés par les concepteurs.
Cette section fournit des informations générales et des exemples destinés à aider les développeurs de composants et de contrôles à ajouter des fonctionnalités de design à des composants.
Même si de nombreuses améliorations décrites dans cette section s'appliquent aux composants en général, certaines sont propres aux Web Forms ou aux Windows Forms. Il existe des différences au moment du design entre les Web Forms ASP.NET et les Windows Forms parce que le mécanisme de rendu des contrôles serveur ASP.NET est différent de celui du rendu des contrôles Windows Forms. Un contrôle serveur ASP.NET envoie le langage HTML ou un autre langage de balisage à un client. Ce langage est restitué par le navigateur du client ou un autre périphérique d'affichage. Un contrôle Windows Forms, en revanche, peint généralement à l'aide de GDI+, la nouvelle bibliothèque de graphiques Windows.
Dans cette section
Nouveautés de la prise en charge au moment du design dans le .NET Framework 2.0
Propose une vue d'ensemble des nouvelles fonctionnalités au moment du design dans le .NET Framework.Rubriques Comment et Procédure pas à pas relatives à l'extension de la prise en charge au moment du design
Répertorie les liens vers les rubriques "Comment" de cette section.Comment : accéder à la prise en charge au moment du design dans les Windows Forms
Décrit les assemblys et les espaces de noms que vous pouvez utiliser pour étendre la prise en charge, au moment du design, des contrôles Windows Forms.Architecture de design
Propose une vue d'ensemble de l'architecture au moment du design dans le .NET Framework.Vue d'ensemble du descripteur de type
Propose une vue d'ensemble de l'architecture du descripteur du type.Vue d'ensemble du service de comportement
Propose une vue d'ensemble de la prise en charge d'une interface utilisateur pour les concepteurs Windows Forms.Vue d'ensemble de la sérialisation du concepteur
Propose une vue d'ensemble de l'architecture de sérialisation du concepteur.Attributs et prise en charge au moment du design
Décrit comment utiliser des attributs personnalisés pour associer la prise en charge au moment du design à un composant ou contrôle particulier.Conversion de type généralisée
Décrit des méthodes de conversion de valeurs entre des types.Commandes du concepteur et modèle objet DesignerAction pour les Windows Forms
Explique comment implémenter les balises actives et les commandes du concepteur pour les contrôles et les composants personnalisés.Concepteurs personnalisés
Décrit les principaux concepts sous-jacents à l'implémentation d'un concepteur. Un concepteur est une classe qui peut contrôler la représentation visuelle et le comportement d'un composant au moment du design.Fournisseurs d'extendeurs
Propose une vue d'ensemble de l'architecture du fournisseur d'extendeurs.Éditeurs de types d'interface utilisateur
Propose une vue d'ensemble de l'architecture de l'éditeur de types muni d'une interface utilisateur.Dépannage du développement au moment du design
Explique comment diagnostiquer et corriger divers problèmes susceptibles de se produire dans le développement au moment du design.Ressources externes pour l'extension de la prise en charge au moment du design
Propose des liens vers des sites Web externes pour vous aider à mieux comprendre le fonctionnement de l'extension de la prise en charge au moment du design.
Sections connexes
Attributs en mode design pour les composants
Répertorie les attributs généralement appliqués à des propriétés et des événements de composants et de contrôles.Erreurs au moment du design dans le Concepteur Windows Forms
Explique la signification et l'utilisation de la liste d'erreurs au moment du design qui apparaît dans Microsoft Visual Studio lorsque le chargement du concepteur Windows Forms échoue.