“运行文本”标记在XAML中的含义是什么?

时间:2015-03-24 14:00:22

标签: c# wpf xaml

“运行文本”标记在XAML中的含义是什么?

它刚刚出现在XAML中,显然是通过表达混合放在那里。当我进行winmerge时,我从之前发布的代码中注意到了它。

旧:

<TextBlock VerticalAlignment="Bottom" Height="20" >^</TextBlock> 

新:

<TextBlock VerticalAlignment="Bottom" Height="20" ><Run Text="^"/></TextBlock>  

3 个答案:

答案 0 :(得分:9)

TextBlock包含Inlines集合
TextBlock.Inlines Property
Run是一种Inline
运行是内联级流内容
这是多个内联

的示例
<TextBlock Grid.Row="3" Name="myText" TextWrapping="Wrap">
    I go
    <LineBreak/>
    <Run FontStyle="Italic" Text="home"/>
</TextBlock>

答案 1 :(得分:2)

TextBlock不仅可以包含文本作为内容,还可以是其他控件。在您的新版本中,TextBlock的内容为System.Windows.Documents.Run,其Text属性设置为^

这可能是由Expression Blend完成的,因为在某些情况下^可能被视为控制角色。通过将文本放在Run中,它消除了^是文本而不是某些控制字符的任何歧义。在与复杂的设计师打交道时,最好尽可能多地删除Ambguitity,这样Blend可能只是为了让它在自己的解析引擎上更容易。

答案 2 :(得分:0)

您可以在TextBlock中多次使用RunText。对于每个文本,如果您不想使用许多TextBlocks,这将在运行时显示。