【发布时间】:2012-12-12 15:24:43
【问题描述】:
我有一个带有成员函数的数据类,它在运行时根据当前实例创建 UI 元素。我希望能够根据当前使用的文本大小调整输出 UI 元素的大小。如何找到渲染文本的高度(以像素为单位)?
具体来说,我想创建一个基于渲染“0”高度的倍数(~1.5)的均匀正方形网格。
我尝试创建一个 TextBlock 并获取 ActualHeight,但是,这总是返回 0...大概是因为 TextBlock 从未实际显示。即使在 TextBlock 的实例上使用 UpdateLayout 也不会更新 ActualHeight 值。
还有其他方法吗?
NB 自动调整大小对我不起作用,因为我有一些空元素在我这样做时会缩小到 0。我需要根据当前使用的字体大小适当调整所有元素的大小,无论它们是否有文本。
【问题讨论】:
标签: c# user-interface windows-8