我有一個WPF窗口,其中包含一個帶有MinWidth和MinHeight的UserControl。我該如何防止用戶將窗口大小調整到UserControl的最小大小被違反的地步?WPF:製作子元素MinWidth/MinHeight約束窗口
這是我正在處理的一個窗口的簡化版本。我真正的應用程序的用戶控件在這裏換成了邊框:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<DockPanel>
<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal">
<Button Content="OK"/>
<Button Content="Cancel"/>
</StackPanel>
<Border BorderBrush="Green" BorderThickness="10"
MinWidth="200" MinHeight="150"/>
</DockPanel>
</Window>
如果我縮小窗口足夠小,邊框的右邊和底部邊緣被截斷。我想阻止窗口變小 - 我希望我的窗口的最小尺寸恰好是邊框的最小尺寸爲的點。一些框架(如Delphi VCL)自動將子控件的最小大小聚合到窗口;我預計WPF也會這樣做,但顯然不是。
我總是可以明確地設置窗口的MinWidth和MinHeight,但要正確計算這些,我必須考慮按鈕的ActualHeight,這意味着至少要等待一個佈局傳遞(或手動調用Measure)。亂。
有沒有更好的方法來保持窗口的內容調整太小?
這個完美的作品。 – 2013-09-11 19:13:58