是否可以以某种方式限制 Window.SizeToContent
仅扩大尺寸?
我有一个通用窗口,动态填充 TabControl 中的内容。由于一开始并不知道每个 TabItem 将有多大,所以我无法预先计算所需的大小(尽管我只关心高度)以在不滚动的情况下显示所有内容。
启用SizeToContent
将在标签更改时自动将大小调整为所需的大小。虽然它只在当前 View 需要更多空间时扩展是可以的,但我不喜欢窗口在需要较少空间时也会缩小。是否可以将 SizeToContent
行为限制为仅允许窗口大小的扩展?或者可以以不同的方式模拟行为,同时考虑窗口框架和选项卡控件旁边的其他组件仍然产生正确的结果?
我尝试 Hook 不同的窗口事件,以找出更改选项卡时新的大小信息的去向,但窗口上唯一真正有用的信息是 OnChildDesiredSizeChanged
,没有产生确定性结果(对于某些选项卡,它被称为,对于其他选项卡则不是)。你还有什么别的想法吗?
最佳答案
您可以尝试使用FrameworkElement.MinHeight和 FrameworkElement.MinWidth设置Window
加载后的最小高度/宽度。
public void WindowLoaded()
{
this.MinHeight = this.ActualHeight;
this.MinWidth = this.ActualWidth;
}
关于wpf - 限制 Window.SizeToContent 仅展开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15225798/