2017-09-28 124 views
0

我知道WPF窗口具有'SizeToContent'屬性,它工作得很好,幾乎是我想要的這種情況。然而,我有什麼不同。我有一個窗口,它有一些一般的內容,我希望它自動調整到該內容的高度。設置SizeToContet =「高度」......到目前爲止非常好。WPF窗口大小...大部分內容?

但是,我也有一個圖形元素,位於主要內容的後面,並且設計在左下角。該窗口可以很短,所以在某些情況下,圖形比主要內容更高;在這種情況下,我希望它將圖形剪輯到主要內容的高度。然而,使用SizeToContent時,它會將圖形視爲內容的一部分(可以理解),並且不會讓窗口變得比這更短。

有沒有辦法在計算SizeToContent高度時告訴特定項目被忽略?

+1

把項目放在畫布? – shadow32

+0

有趣的是,我不知道畫布不會對此有所貢獻......但是畫布似乎總是有頂部的證明,所以當畫布變得更短時,它將圖形的頂部保留在窗口的頂部邊緣並切掉底部;我希望得到相反但非常好的信息。 – sfaust

回答

0

好吧我想我想出了一些可行的東西。 UI元素的Background財產無助於這種計算似乎,所以我最後做的是把一個圖像刷背景上主電網這樣的:

<Grid.Background> 
     <ImageBrush ImageSource="Images/Gfx_UICorner_NoLogo.png" AlignmentX="Left" AlignmentY="Bottom" Stretch="None" /> 
    </Grid.Background> 

這樣做將它正確對齊左下方並且它不會有助於計算窗口的期望大小,因此短窗口將像我一直在尋找的那樣切斷頂部。

感謝this thread指向我在正確的方向...