Windows XAML:文本块中的行数?
我有一个写在画布上的文本块。因为它位于画布上,所以我手动指定x坐标和y坐标 我的问题是,我的y坐标取决于我的文本块上包装的行数(由于宽度有限) 例如,文本“添加香蕉”写为: 加 香蕉 它有两行计数 根据行数,我会做一些事情 现在,我用这个来确定TextWidth,然后从那里进行计算。但是,仍然存在一些异常值(例如,计算出的不是3条线,而是实际视觉中的2条线):Windows XAML:文本块中的行数?,xaml,winrt-xaml,textblock,line-count,Xaml,Winrt Xaml,Textblock,Line Count,我有一个写在画布上的文本块。因为它位于画布上,所以我手动指定x坐标和y坐标 我的问题是,我的y坐标取决于我的文本块上包装的行数(由于宽度有限) 例如,文本“添加香蕉”写为: 加 香蕉 它有两行计数 根据行数,我会做一些事情 现在,我用这个来确定TextWidth,然后从那里进行计算。但是,仍然存在一些异常值(例如,计算出的不是3条线,而是实际视觉中的2条线): 在Windows应用程序Xaml中有没有最好的方法来实现这一点 你能解决这个问题吗?我有一些问题…嗨,meadlai,我刚刚使用了Tex
在Windows应用程序Xaml中有没有最好的方法来实现这一点 你能解决这个问题吗?我有一些问题…嗨,meadlai,我刚刚使用了TextBlock的包装,并为TextBlock指定了一定的高度和宽度。谢谢。。。我在内存中用一个新的文本块来计算宽度。你能解决这个问题吗?我有一些问题…嗨,meadlai,我刚刚使用了TextBlock的包装,并为TextBlock指定了一定的高度和宽度。谢谢。。。我通过内存中的新文本块计算宽度。
private double stringWidth(string s, double fontSize)
{
if(s==" ")
s = "\u00A0"; //this line wasn't required in silverlight but is now
TextBlock t = new TextBlock()
{
FontSize = fontSize,
Text = s
};
t.Measure(new Size(double.MaxValue, double.MaxValue)); //this line wasn't required in silverlight but is now
return t.ActualWidth;
}