Ich habe ein GUI-System implementiert, das stark vom WPF-Measure- und Arrange-Layout-System für ein Spiel inspiriert wurde. Obwohl es mit DockPanels und StackPanels funktioniert, musste ich vor kurzem WrapPanels verwenden. Ich habe festgestellt, dass mein GUI-System im aktuellen Zustand das Wrapping nicht unterstützen kann, da ich die maximal verfügbare Größe basierend auf den Vorfahren kennen müsste und meine Messung derzeit ohne diese Informationen durchgeführt wird.Wie funktioniert die Größenbeschränkung von WPF?
Ich habe die WPF-Dokumentation überprüft und festgestellt, dass ihre Measure
Methode eine Größenbeschränkung als Parameter verwendet: Size Measure(Size availableSize)
. Das verwirrt mich. Nach meinem Verständnis führt WPF zuerst Messungen von den Blättern zur Wurzel und dann die Anordnung von der Wurzel zu den Blättern durch. In diesem Fall wird jedoch die verfügbare Größe der Vorfahren in der Messphase benötigt. Dies scheint mir widersprüchlich zu sein, da die Größe der Vorfahren von der Größe ihrer Nachkommen abhängt.
Wie liefert WPF diesen availableSize
Wert im Messdurchgang?
Das macht Sinn :) – Trillian