2009-10-05 4 views
0

J'ai des ensembles de contrôles contenus dans des contrôles GroupBox individuels.Comment stocker des ensembles de contrôles dans un assemblage?

dire donc GroupBoxCommon contient des éléments d'interface utilisateur communs, GroupBoxSpecific contient des éléments de l'interface utilisateur spécifiques, etc.

J'ai une façon de les empiler dans une interface utilisateur unique (panneau flottant) en fonction de la sélection en cours dans l'application. Je me demande juste comment je devrais stocker ces ensembles de contrôles?

Dois-je créer des formulaires séparés pour chacun à l'intérieur de ce seul assemblage (utilisé par l'application).

Dois-je les créer de façon dynamique, comme dans:

Create GroupBoxCommon 
Add Button 
Add Button 
... 

Ou devrais-je avoir dans une seule forme, mais offsetted?

Pour moi # 1 semble être le moyen, mais il pourrait y avoir une meilleure façon de le faire?

Dans le tout ce que je vais faire est de récupérer ces ensembles de contrôles et de les empiler dans une seule interface utilisateur.

Répondre

3

Placez chaque groupe de contrôles à l'intérieur d'un UserControl. C'est pour cela qu'ils sont conçus, et cela rendra probablement votre code de formulaire plus simple car il aura moins de contrôle.

Il n'y a aucun problème à définir UserControls dans une DLL, il existe même un modèle de projet ("IIRC Windows Forms Control Library").

+0

Merci, mais quand je définis un UserControl, ne devrait-il pas être un contrôle personnalisé, pas une instance de contrôle personnalisé? –

+1

Désolé, je ne comprends pas votre question. Tout ce que vous devez faire est de créer (a) un UserControl appelé CommonControl, qui contient CommonGroupBox, qui contient les éléments d'interface utilisateur commune, et (b) un UserControl appelé SpecificControl, qui contient le SpecificGroupBox, qui contient les éléments spécifiques de l'interface utilisateur. Répétez (b) pour chaque ensemble différent d'éléments d'interface utilisateur spécifiques. –

Questions connexes