我正在開發一個WPF應用程序。在這個應用程序中,我有一個包含WrapPanel的窗口。 WrapPanel內部是一系列不同高度的StackPanels,但寬度完全相同。設計時不知道StackPanels的數量和大小(它們是動態生成的)。如何根據內容動態調整WrapPanel高度?
這些StackPanels通常彼此堆疊良好,然後在WrapPanel中沒有更多空間時「換行」到另一列。爲了達到這個目的,我必須爲我的WrapPanel設置一個固定的高度(高度設置爲「Auto」,它將繼續向下而不是包裝到另一個列)。然而,偶然我有一個StackPanel太大而不適合WrapPanel高度,它只是被截斷。這種情況的圖像如下。 (我沒有代表嵌入圖像)。
http://oi54.tinypic.com/2qa1ul3.jpg
我的問題是,我可以查詢每個StackPanel的高度之前,我顯示()給用戶,並設置基於最大的StackPanel的WrapPanel的高度?有一個更好的方法嗎?謝謝。
我其實不希望WrapPanel垂直增長,否則StackPanels不會跳轉到下一列。所以,WrapPanel的高度是固定的。你的代碼很有趣,謝謝你的回覆。我會嘗試一下。 – robr 2011-04-26 19:21:46
該代碼有效,做我需要的。有點棘手,因爲Height屬性在Windows上沒有設置,直到Show()被調用...但我得到它的工作。謝謝。 – robr 2011-04-26 20:58:43