如何在WPF中获取折叠控件的宽度/高度?

r1c*_*cki 6 c# vb.net wpf

我想知道在控件崩溃时是否有一种简单的方法可以在运行时获取WPF中控件的宽度.

当我使用control.Width ill得到以下结果:-1.#IND和control.actualWidth将返回0.0,因为它已折叠.

我想调整窗口大小,然后显示折叠控件.

谢谢

编辑:
一些细节

我的窗口中有一个包含2列的网格,第1列包含选项卡控件,第2列包含扩展控件.我想在扩展扩展器控件时扩展窗口的宽度,因此第1列中的内容将保持其大小.

Ern*_*rno 1

您期望获得什么尺寸?

大小不仅取决于控件,还取决于其容器。因此,除非实际渲染控件,否则无法确定实际大小。

您可以将其设置为不可见,而不是使用 Collapsed,这样它将根据其自身的逻辑和容器的逻辑来调整大小。

编辑

在评论中,很清楚需要控件大小的原因是什么:

我的窗口中有一个包含 2 列的网格,第一列包含选项卡控件,第二列 a 包含扩展器控件。我想在展开扩展器控件时扩展窗口的宽度,因此第一列中的内容将保持其大小。

我的答案:

将窗口的 SizeToContent 设置为 WidthAndHeight,并将两个网格列的宽度设置为 auto。那应该解决它。