Entwickler-Ecke

WinForms - Winform leer und es wird kein Steuerelement mehr angezeigt


doubleII - Do 09.03.17 11:50
Titel: Winform leer und es wird kein Steuerelement mehr angezeigt
Hallo zusammen,

ich habe folgendes Problem. Beim Laden der winform wird als erste die Size_Changed Methode
aufgerufen.

C#-Quelltext
1:
2:
3:
4:
private void Form1_SizeChanged(object sender, EventArgs e)
{
    ResizeChildrenControls();
}

und dann die Form1_Load. Warum ändert sich die Skalierung beim Start? Erst sollte die Winform geladen werden. Wenn der User die
Größe der Gui ändert, wird die Methode aufgerufen, nicht war?


Delete - Do 09.03.17 14:19

- Nachträglich durch die Entwickler-Ecke gelöscht -


doubleII - Fr 10.03.17 11:52

das meine ich

http://www.entwickler-ecke.de/topic_Windows+Form+plaetzlich+leer_98163,0.html


die habe ich schon kontrolliert.

C#-Quelltext
1:
this.Controls.Add(...);                    

Der Konstruktor habe ich nicht geändert.

ich habe auf einen anderen PC probiert, es funktioniert ganz normal. Alle Steuerelemente werden angezeigt. :shock:

habe auch auf dem Pc getestet, wo es nicht funktioniert:

ich habe eine WinForm erstellte nur mit zwei Tasten wenn ich die Resize_Form1 und Load_Form1 in der Form1 leer habe, (wird erst Resize und dann load aufgerufen ) zeigt mir keine Steuerelemente also die beide Tasten, wenn ich Resize auskommentiere sind sie sichtbar aber ich will sie auch mit-skalieren.


hier spring aus dem Konstruktor raus:


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
{
              .
              .
              .
            // Form1

            this.tableLayoutPanel1.PerformLayout();
            this.ResumeLayout(false);// hier springt raus
            this.PerformLayout();
//Konstruktor Ende


Delete - Fr 10.03.17 12:45

- Nachträglich durch die Entwickler-Ecke gelöscht -


doubleII - Fr 10.03.17 12:55

ah ah ah

Monitorauflösung war auf 125%. So ein ...


Ralf Jansen - Fr 10.03.17 13:15

Zitat:
Monitorauflösung war auf 125%. So ein ...


Daran solltest du dich gewöhnen und passend darauf reagieren. 100% ist nicht mehr einfach Standard. Windows 10 wird bei der Installation eine passende Skalierung zum individuellen Setup wählen. Die wird oft genug nicht mehr 100% sein.

Wenn du also selbst versucht irgendwas zu sizen oder zu positionieren versuche das möglichst ohne Pixelangaben hinzubekommen oder denke zumindest daran die Pixelangaben mit den aktuellen dpi Einstellungen des Systems umzurechnen.