Frage

In Java Swing kann ich Platten in Form von Tafeln einsetzen und so weiter, und nicht ein ganz neues Fenster für jede Ansicht meiner applicaiton bauen muß, oder Chaos um Entfernen und Hinzufügen von Kontrollen.

Theres eine Platte cla sin C # aber ich kann nicht jede mögliche Weise sehen eine ‚Plattenform‘ zu schaffen, oder im Grunde nur ein Formular in Formulardesigner das ist ein Panel und seinen Inhalt.

Wie mache ich das dann und arbeiten, um die Art, wie ich mit Java Swing tat?

War es hilfreich?

Lösung

In der Regel nur ich verschiedene Formen innerhalb einander Andocken des IsMdiContainer Eigenschaft auf True auf das übergeordnete Fenster zu setzen. Dann erstelle ich subforms, dass ich die folgende Funktion Dock mit:

static class FormUtil
{
    static public void showForm(Form sender, Control reciever)
    {
        sender.ControlBox = false;
        sender.FormBorderStyle = FormBorderStyle.None;
        sender.ShowInTaskbar = false;
        sender.TopLevel = false;
        sender.Visible = true;
        sender.Dock = DockStyle.Fill;

        reciever.Controls.Clear(); //clear panel first
        reciever.Controls.Add(sender);
    }

}

dann, wenn ich ein Formular in einem Panel an die Eltern andocken müssen zu bilden, ich tue nur:

FormUtil.showForm(new SomeForm(), this.splitContainer1.Panel1);

Dies ermöglicht es mir, einige der Formularerstellung zu verschiedenen Designern zu delegieren. Funktioniert wie ein Zauber für mich, liebt, wenn Theres eine bessere Art und Weise zu tun, es zu hören.

Andere Tipps

Eigentlich können Sie das Control Panel verwenden und es ist Dock-Eigenschaft zu füllen. Auf diese Weise Ihr Panel wird die gesamte Leinwand von der Form sein. Dann können Sie Kind Platten je nach Bedarf entweder durch Code hinter oder durch Formulardesigner.

hinzufügen

Es ist das Konzept der Benutzersteuerung, die basicly Sie mit einem Panel wie Designer-Oberfläche bereitstellt, nicht zu erwähnen, dass Sie Atom Formulare erstellen können (die wiederverwendet werden kann) und registriert sie als vererbbar, so Sie die Vererbung liefern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top