it-swarm.com.de

Formulargröße zur Laufzeit in C # ändern

Wie kann ich die Fenstergröße zur Laufzeit ändern?

Ich habe Beispiele gesehen, aber jeder benötigt die Form.Size-Eigenschaft. Diese Eigenschaft kann wie folgt festgelegt werden: http://msdn.Microsoft.com/de-de/library/25w4thew.aspx#Y456 , Ich habe mein Antragsformular jedoch in einem visuellen Tool erstellt Das Formular wird folgendermaßen erstellt:

static void Main()
{
    Application.Run(new Form());
}

Wie stelle ich diese Size-Eigenschaft jetzt ein und ändere sie dann mit den Form.Height- und Form.Width-Methoden?

12
bLAZ

Wenn Sie das Formular programmgesteuert bearbeiten möchten, besteht die einfachste Lösung darin, einen Verweis darauf zu behalten:

static Form myForm;

static void Main()
{
    myForm = new Form();
    Application.Run(myForm);
}

Sie können dies dann verwenden, um die Größe (oder was auch immer Sie sonst tun möchten) zur Laufzeit zu ändern. Obwohl Pfeil darauf hinweist können Sie die Variable Width und Height nicht direkt setzen, sondern müssen die Eigenschaft Size einstellen.

9
ChrisF

Sie können die Width- und Height-Eigenschaften des Formulars nicht ändern, da sie schreibgeschützt sind. Sie können die Größe des Formulars folgendermaßen ändern:

button1_Click(object sender, EventArgs e)
{
    // This will change the Form's Width and Height, respectively.
    this.Size = new Size(420, 200);
}
32
Arrow

Um dies aufzurufen, müssen Sie einen Verweis auf Ihr Formular speichern und den Verweis an die Ausführungsmethode übergeben. Dann können Sie dies in einem Actionhandler aufrufen.

public partial class Form1 : Form
{
    public void ChangeSize(int width, int height)
    {
        this.Size = new Size(width, height);
    }
}
4
MrFox

Sie können die Höhe eines Formulars ändern, indem Sie wie folgt vorgehen, wo Sie die Größe ändern möchten (ersetzen Sie "10" durch Ihre Größe):

this.Height = 10;

Dies kann auch mit der Breite erfolgen:

this.Width = 10;
1
Penge

So etwas funktioniert gut für mich:

public partial class Form1 : Form
{
    Form mainFormHandler;
...
}

private void Form1_Load(object sender, EventArgs e){
    mainFormHandler = Application.OpenForms[0];
   //or instead use this one:
   //mainFormHandler = Application.OpenForms["Form1"];
}

Dann können Sie die Größe wie folgt ändern:

mainFormHandler.Width = 600;
mainFormHandler.Height= 400;

oder

mainFormHandler.Size = new Size(600, 400);

Wenn Sie die Größe von mainForm von einer anderen Form aus ändern möchten, können Sie die Größe einfach mit Property festlegen.

0
GntS