目前我有
SizeToContent="WidthAndHeight"
ResizeMode="NoResize"
因为我想利用WPF的自动调整大小。但是当我隐藏一些按钮时,窗口宽度会缩小,这是预期的行为,但我想禁用它。基本上我希望窗口大小在渲染后保持不变。有没有一个很好的方法来做到这一点,而不是计算启动时的宽度,并在代码后面设置它?
答案 0 :(得分:0)
背后的代码没有任何问题。
但您可能希望将按钮“Visibility
设置为Hidden
而不是Collapse
,以实现所需的行为。
答案 1 :(得分:0)
当窗口根据其内容大小获得其宽度和高度时,您可以在其加载事件中设置窗口的大小(固定大小)。你应该可以在load事件中使用类似this.Width = this.ActualWidth和this.Height = this.ActualHeight的东西。
答案 2 :(得分:0)
这是我的工作: 对于窗口集:
SizeToContent = SizeToContent.WidthAndHeight
ContentRendered += DisableSizeToContent
最后在此处禁用SizeToContent
:
private static void DisableSizeToContent(object sender, EventArgs e)
{
if (sender is Window win)
{
win.SizeToContent = SizeToContent.Manual;
}
}
仍在寻找异步绑定的解决方案!