使用包含unicode字符的文本计算TextBlock的完美宽度

时间:2014-03-05 11:53:30

标签: wpf textblock

我在TextBlock中有以下文字:

  

textBlock1.Text =“欢迎!\ n \ n \ n \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \在所有主要操作系统,搜索引擎,应用程序和万维网中。“

TextBlock的属性:

textBlock1.FontSize=22;
textBlock1.FontFamily="Segoe UI";

这里\u25Bc是我特殊的unicode角色。 如何在没有任何变化的情况下计算TextBlock的完美宽度? 宽度需要完美,因为我用它来为textBlock1提供动画。

1 个答案:

答案 0 :(得分:1)

ActualWidth适合我:

<Window x:Class="widthtest.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">

<StackPanel HorizontalAlignment="Left">

    <TextBox x:Name="text" 
             FontFamily="Segoe UI" 
             FontSize="22" 
             Text="Welcome! &#x25BC; The &#x25BC; Unicode Consortium" />

    <Border Margin="0,10" 
            Background="Blue" 
            Height="{Binding ActualHeight, ElementName=text}" 
            Width="{Binding ActualWidth, ElementName=text}" />

</StackPanel>
</Window>

enter image description here