我有一个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