WPF禁用窗口自动调整大小
本文关键字:调整 窗口 WPF | 更新日期: 2023-09-27 18:27:42
目前我有
SizeToContent="WidthAndHeight"
ResizeMode="NoResize"
因为我想利用WPF的自动调整大小。但是当我隐藏一些按钮时,窗口宽度会缩小,这是预期的行为,但我想禁用它。基本上,我希望窗口大小在渲染后保持原样。有没有一种很好的方法可以做到这一点,而不是在启动时计算宽度并在代码后面设置它?
后面的代码没有任何问题。
但是,您可能希望将按钮的Visibility
设置为Hidden
,而不是Collapse
,以实现所需的行为。
当窗口根据其内容的大小获得其宽度和高度时,您可以在其加载事件中设置窗口的大小(固定大小)。你应该用这样的东西。宽度=这个。实际宽度和这个。高度=这个。负载事件中的ActualHeight。
以下是我的操作:对于窗口集:
SizeToContent = SizeToContent.WidthAndHeight
ContentRendered += DisableSizeToContent
最后在那里禁用SizeToContent
:
private static void DisableSizeToContent(object sender, EventArgs e)
{
if (sender is Window win)
{
win.SizeToContent = SizeToContent.Manual;
}
}
仍在寻找异步绑定的解决方案!