Contrôles utilisateur pour les utilisateurs de Visual Basic 6.0
Mise à jour : novembre 2007
Visual Basic 6.0 et Visual Basic 2008 vous permettent tous deux de créer des contrôles. Il existe toutefois plusieurs différences dont vous devez avoir connaissance.
Différences conceptuelles
Dans Visual Basic 6.0, les projets UserControl (également appelés projets ActiveX Control) sont utilisés pour créer des contrôles ActiveX. Une fois compilés, les objets UserControl peuvent être hébergés dans n'importe quel conteneur prenant en charge ActiveX, notamment les formulaires Visual Basic 6.0 et Internet Explorer.
Dans Visual Basic 2008, les projets Bibliothèque de contrôles Windows sont utilisés pour créer des contrôles qui peuvent être hébergés dans des applications Windows Forms.
Comportement au moment du design
Dans Visual Basic 6.0, avant d'ajouter un objet UserControl dans un formulaire au moment du design, vous devez fermer la fenêtre de conception du contrôle UserControl. Cette étape compile (génère) automatiquement le contrôle. Lorsque des modifications sont apportées par la suite à l'objet UserControl , elles ne sont répercutés dans l'instance de UserControl sur le formulaire avant l'exécution de l'application. Si elle est ouverte, la fenêtre de conception du contrôle UserControl se ferme automatiquement.
Dans Visual Basic 2008, un objet UserControl peut être ajouté à un formulaire sans fermer UserControl Designer ; cependant, le contrôle UserControl doit être généré avant d'être ajouté à un formulaire. La simple fermeture de la fenêtre de conception du contrôle UserControl ne suffit pas à générer le contrôle. Toute modification apportée ultérieurement au contrôle utilisateur n'est pas reflétée sur le Concepteur de formulaires avant que l'objet UserControl soit régénéré. Un objet UserControl est régénéré automatiquement chaque fois vous déboguez votre application de test.
Rendre des valeurs persistantes
Dans Visual Basic 6.0, les événements ReadProperties et WriteProperties sont utilisés pour récupérer ou enregistrer les valeurs d'un objet UserControl dans un objet PropertyBag.
Dans Visual Basic 2008, l'objet PropertyBag n'est plus pris en charge et les événements ReadProperties et WriteProperties n'existent plus. À présent, la sérialisation permet d'enregistrer et de récupérer des propriétés au format binaire ou SOAP. Pour plus d'informations, consultez Procédure pas à pas : persistance d'un objet en Visual Basic
Mettre à niveau des remarques
Lorsqu'un projet UserControl Visual Basic 6.0 est mis à niveau vers Visual Basic 2008, il est mis à niveau vers une bibliothèque de contrôles Windows ; le contrôle résultant ne peut plus être hébergé dans Internet Explorer.
Voir aussi
Tâches
Procédure pas à pas : persistance d'un objet en Visual Basic
Concepts
Équivalents PropertyBag pour les utilisateurs de Visual Basic 6.0
Autres ressources
Développement de contrôles Windows Forms au moment du design