Développer à l'aide du designer sur d'autre composants qu'une fenetre

Résolu
cs_cfz Messages postés 23 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 4 mars 2006 - 24 janv. 2006 à 12:31
cs_cfz Messages postés 23 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 4 mars 2006 - 26 janv. 2006 à 12:32
Bonjour,
Je souhaiterais avoir quelque renseignement supplémentaire sur le Designer fourni avec Visual Studio.
Lorsque je créé un nouveau composant de base dérivé d'une 'Form', le Designer me permet de placer aisément mes différents composants. Mais ça ne marche pas lorsque mon composant de base est, par exemple, une TabPage. Pourquoi ? Y a-t-il une solution ou suis-je obligé de placer mes composants directement dans le code ?

Merci d'avance.

4 réponses

cs_cfz Messages postés 23 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 4 mars 2006
26 janv. 2006 à 12:32
En fait ce n'est pas possible de mettre un UserControl dans le TabControl... mais c'est ma logique de construction qui n'était pas bonne.
En fait, il me suffit de créer mes composant dans un UserControle comme tu me le conseil. Dans mon TabControl je n'aurais alors qu'à ajouter des TabPage vierges dans lesquels je mettrais mon UserControl.
Merci
3
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
24 janv. 2006 à 18:11
La solution, c'est de faire un UserControl et de mettre ta TabPage dedans... la tu aura le même comportement qu'une Form.

Sinon, lorsque tu utilise juste l'héritage d'un Control, tu peux le visualiser dans le designer, mais de façon limitée : tu peux faire glisser des controls dessus... mais tu ne verra pas leur représentation graphique. Ca te permet tout de même d'accéder à leurs propriétés par la fenêtre des propriétés, pareil pour les évènements...

Petite précision : pour que ton controle dérivé soit affiché dans le designer, il doit pouvoir être instancié par le designer, c'est à dire avoir un constructeur par défaut sans paramètre, et être instanciable par ce constructeur...
0
cs_cfz Messages postés 23 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 4 mars 2006
25 janv. 2006 à 12:09
J'avais pensé à cette solution, mais elle ne me plait pas trop... mon but étant de définir ce TabPage comme étant un nouveau composant qu'il me suffirait alors de placer dans mes TabControl. Chose que je ne pourrais pas faire s'il est contenu dans un UserControl.

J'ai peut-etre une solution mais je ne l'ai pas encore testée... a savoir le définir dans un UserControl, et une fois tout le travail de mise en forme terminé, récupérer la fonction InitializeComposant... A moins de trouver d'ici là une autre solution, je vous tiendrais au courant du résultat.

Malheureusement je crains qu'il n'y ai pas vraiment d'autre solution... parce que si j'utilise le Designer ce n'est pas pour acceder aux propriétés mais pour m'occuper du placement des objets contenu dans le TabPage.

+
0
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
25 janv. 2006 à 16:22
"un nouveau composant
qu'il me suffirait alors de placer dans mes TabControl. Chose que je ne
pourrais pas faire s'il est contenu dans un UserControl."

Pourquoi ne pourrais tu pas le faire ? Tu peux très bien ajouter un UserControl dans tes tabControl... de la même façon que tu y ajouterai un composant.
0
Rejoignez-nous