none
WinForms C# Form in Panel RRS feed

  • Frage

  • Hallo zusammen,

    Ich arbeite an einer WinForms Anwendung und stehe vor folgendem Problem.

    Ich habe ein Panel im rechten Bereich von einem Splitcontainer. Im linken Container liegt ein Button.

    Wenn man diesen Button drückt wird eine Winform in das Panel geladen.

    Code:

    Dash myForm = new Dash();
                myForm.TopLevel = false;
                myForm.AutoScroll = true;
                myForm.FormBorderStyle = FormBorderStyle.None;
                this.panel1.Controls.Add(myForm);
                myForm.Show();

    Ich habe das Problem dass die Form die im Panel geöffnet wird trotz Dock.Fill nicht an die Größe des "Mutter-Panel" angepasst wird.

    Kann mir bitte jemand sagen woran das liegen kann?

    Vielen Dank!


    Montag, 13. August 2018 22:28

Antworten

  • Hi,
    wenn Du ein Control in einem Panel platzierst, warum nimmst Du dann anstelle eines Controls (User Control oder Custom Control) ein Form? Probiere es mal mit einem UserControl.

    Und wo ist die Zuweisung von Dock?

          Dash myForm = new Dash();
          myForm.TopLevel = false;
          myForm.AutoScroll = true;
          myForm.FormBorderStyle = FormBorderStyle.None;
          myForm.Dock = DockStyle.Fill;
          this.panel1.Controls.Add(myForm);
          myForm.Show();


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks


    • Bearbeitet Peter Fleischer Dienstag, 14. August 2018 04:54
    • Als Antwort vorgeschlagen Peter Fleischer Dienstag, 14. August 2018 05:22
    • Als Antwort markiert B.Seide Dienstag, 14. August 2018 09:43
    Dienstag, 14. August 2018 04:43

Alle Antworten

  • Hi,
    wenn Du ein Control in einem Panel platzierst, warum nimmst Du dann anstelle eines Controls (User Control oder Custom Control) ein Form? Probiere es mal mit einem UserControl.

    Und wo ist die Zuweisung von Dock?

          Dash myForm = new Dash();
          myForm.TopLevel = false;
          myForm.AutoScroll = true;
          myForm.FormBorderStyle = FormBorderStyle.None;
          myForm.Dock = DockStyle.Fill;
          this.panel1.Controls.Add(myForm);
          myForm.Show();


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks


    • Bearbeitet Peter Fleischer Dienstag, 14. August 2018 04:54
    • Als Antwort vorgeschlagen Peter Fleischer Dienstag, 14. August 2018 05:22
    • Als Antwort markiert B.Seide Dienstag, 14. August 2018 09:43
    Dienstag, 14. August 2018 04:43
  • Das habe ich gesucht!

    Vielen Dank!

    Dienstag, 14. August 2018 09:43