我正在尝试为Windows Phone 7制作一个阅读器,我需要知道一条线垂直占用多少像素,所以我得到一个新的Textblock并将所有单词放入其中,并将其高度作为字符串的高度,这是我的代码:
public double getActualHeight(String tmp)
{
TextBlock tb = new TextBlock();
tb.FontWeight = currentFontWeight;
tb.TextWrapping = TextWrapping.Wrap;
tb.Width = contentsv.ActualWidth;
tb.Text = tmp;
tb.UpdateLayout();
return tb.ActualHeight;
}
但似乎没有用。
我尝试在Textblock中放入一些文字,并获得它的高度。如果它是可见的,高度可以正常工作,但是当它被折叠时,高度变得非常大(例如2k或3k)。 我检查了this page,它说当某些东西折叠时,屏幕上没有任何空间,所以它的高度无效?即便是ActualHeight?如何在文本块崩溃时获得Textblock的高度?或者我怎么能用一些用户看不到的东西来获得某些文字的高度呢? 任何建议都将受到高度赞赏!
答案 0 :(得分:0)
无法通过将文本块添加到网格行并制作文本块Height="Auto"
和TextWrapping="Wrap"
如果这样做,它将自动获取显示整个文本所需的高度。