2009-08-02 4 views
2

Un cadre Winform existe-t-il pour quelque chose de similaire à ASP.NET Masterpage ou MS Access SubForm? Avec MS Access SubForm, vous pouvez faire comme la page maître ASP.NET avec 0 sous-formulaire MS Access. C'est une énorme perte de temps avec Winform lorsqu'il faut créer beaucoup de formes complexes. Vous devez compenser avec Génération de code qui crée la duplication de code ou faire Runtime Dynamic Form qui est beaucoup plus difficile.Système de création de modèle Winform comme ASP.NET MasterPage ou MS Access SubForm

J'ai cherché sur Internet mais n'en trouve pas.

Répondre

2

Vous pouvez ajouter des formulaires à un formulaire ou à un panneau d'un formulaire.

public Form1() 
{ 
    InitializeComponent(); 

    Form2 embeddedForm = new Form2(); 
    embeddedForm.TopLevel = false; 
    Controls.Add(embeddedForm); 
    embeddedForm.Show(); 
} 

Vous devrez régler le FormBorderStyle-None, sauf si vous voulez avoir une forme mobile réelle à l'intérieur de votre forme.

J'étais un peu pressé au moment de l'affichage, mais Henk a raison. Vous devriez envisager de créer un contrôle utilisateur à la place. Ne pas être confondu avec un contrôle personnalisé, qui est destiné à lorsque vous devez faire votre propre dessin au lieu d'utiliser des collections de contrôles Windows standard.

+0

Super, je ne le savais pas, merci. – programmernovice

+0

Mieux vaut utiliser UsetrControl pour cela - qui est conçu pour cela. –

5

La chose se ferme aux pages maîtres est l'héritage de formulaire. C'est un héritage de classe régulier mais aussi supporté par le Designer. Pour essayer:

1) Ajouter un formulaire avec Ok et Annuler, Construire projet (indispensable)

2) Choisissez Projet, Ajouter un nouvel élément, Windows et le modèle de formulaire hérité. Choisissez le formulaire de l'étape 1) comme le formulaire de base. Ajouter des contrôles.

3) Répétez l'étape 2) plusieurs fois

4) faire quelques boutons pour afficher les formes, construire et tester

5) Retour au formulaire de 1) et changer quelques petites choses (Arrière-plan), exécutez à nouveau


Vos autres outils sont UserControls, ils fonctionnent beaucoup comme dans ASP.NET. Vous les développez comme des formulaires et les appliquez en tant que contrôles.

+0

Merci, je vais essayer aussi. – programmernovice