2011-01-01 13 views
3

Ich muss die Breite und Höhe des Fensters an seinen Inhalt anpassen. Mir ist bekannt, dass die SizeToClient-Eigenschaft von Window vorhanden ist. Wenn jedoch WidthAndHeight als Wert von SizeToClient ausgewählt wird, werden Fensterereignisse auf ungültige Weise ausgelöst, sodass mehrere Komponenten während Loaded-Ereignis eine Ausnahme auslösen: "Hwnd of Zero ist nicht gültig "(zum Beispiel GlassWindows SetAeroGlassTransparency von Windows API CodePack).WPF: Berechnung der Fenstergröße basierend auf dem Inhalt

Gibt es eine Problemumgehung? Ich kann die Fenstergröße manuell berechnen, aber ich weiß nicht, wie die Chromgrößen des Fensters abgerufen werden (mit anderen Worten, die echten Fenster Inhalt Randgrößen).

Details of WPF bug

Mit freundlichen Grüßen - Spook.

Antwort

3

Sie könnten SystemParameters verwenden, um die Größe des Chroms zu bestimmen. Zum Beispiel SystemParameters.CaptionHeight.

+0

Ok, das soll mir erlauben, den Unterschied zwischen Nicht-Client- und Client-Bereich manuell zu berechnen, wenn ich die Größe der Inhalte ändere und es sollte eine ausreichende Umgehung für den WPF-Fehler sein. Ich hoffe, dass ich auf solche lästigen Bugs nicht mehr stoße ... Danke für die Hilfe! – Spook

Verwandte Themen