Wie stelle ich das Startup-ClientSize des WPF-Fensters ein?

Ich möchte die Initiale meines WPF-Fensters setzenKlient Größe. Ich sehe keinen einfachen Weg, dies zu tun.

Wenn sich mein Fenster öffnet, möchte ich, dass es gerade so groß ist, dass sein Inhalt ohne Bildlaufleisten angezeigt wird. Aber nachdem es gezeigt wurde, möchte ich, dass das Fenster frei skalierbar ist (entweder größer oder kleiner).

Wenn ich in meinem Window-Element die Attribute Width und Height setze, wird der Wert fürNicht-Kunde (äußere) Größe, die nicht nützlich ist. Sobald die Titelleiste und die Ränder für die Größenänderung in diesem Bereich angezeigt werden, ist der Client-Bereich nicht mehr groß genug für den Inhalt und es werden Bildlaufleisten angezeigt. Ich könnte das durch eine größere Größe ausgleichen, aber sowohl die Höhe der Titelleiste als auch die Randstärke können vom Benutzer angepasst werden (und die Standardeinstellungen variieren je nach Betriebssystemversion) und müssen auf einem anderen Computer nicht identisch sein.

Ich kann Breite und Höhe für das Inhaltselement des Fensters festlegen (a<Grid> in diesem Fall) und setzen Sie das SizeToContent-Attribut des Fensters auf WidthAndHeight. Das bringt die ursprüngliche Größe des Fensters genau dahin, wo ich es haben möchte. Aber dann ändern sich die Größen nicht mehr - ich kann die Größe des Fensters ändern, aber der Inhalt ändert sich nicht damit, weil ich eine feste Größe angegeben habe.

Gibt es eine Möglichkeit, die anfängliche Clientgröße eines Fensters festzulegen, vorzugsweise ohne Code-Behind? (Ich nehme Code-Behind, wenn dies der einzige Weg ist, aber ich bevorzuge einen Nur-XAML-Ansatz, wenn jemand einen hat.)

Antworten auf die Frage(5)

Ihre Antwort auf die Frage