何时使用<TextBlock>
的文本属性以及何时应该将文本置于<TextBlock>
的内容中?Silverlight TextBlock文本属性与内容
<TextBlock Text="Example Text" />
vs.
<TextBlock>Example Text</TextBlock>
何时使用<TextBlock>
的文本属性以及何时应该将文本置于<TextBlock>
的内容中?Silverlight TextBlock文本属性与内容
<TextBlock Text="Example Text" />
vs.
<TextBlock>Example Text</TextBlock>
前者可结合,而组合Run
■当后者是特别有用的:
<TextBlock Text="{Binding SomeProperty}"/>
<TextBlock>
<Run>You have </Run>
<Run Text="{Binding Count}"/>
<Run>items.</Run>
</TextBlock>
使用该Text
属性的已成为常见的XAML分析器的先前版本的结果但将文本作为内容放置更加自然,尤其是如果您有HTML背景的话。
事实上,许多TextBlocks或者具有简单的文字文本块或者被绑定。平衡国际海事组织将使用Text
属性。此外,任何可能伴随后者的全球化都可能以这些文字被绑定取代而结束。
AnthonyWJones非常正确:本地化是一个关键因素。在实践中,它通常意味着所有奇妙的多值插入实际上是在其他地方完成的,并且只有一个结果文本值被绑定到Text属性。虽然多次运行的例子对硬编码英文而言是“好的”,但它不适用于商业应用程序。 – 2010-09-28 18:19:05
@HiTech:安东尼的观点当然有效,但我打电话给BS“不适合商业应用”。这完全取决于全球化是否是所述申请的要求,而这通常不是。 – 2010-09-28 19:08:08
@Kent Boogaart:*我们现在开发的每个应用程序都应该支持本地化。否则就会有点短视。我们真的应该鼓励坏习惯(例如硬接线文本)吗?对不起,但除非你有更好的理由*“我们并不总是需要本地化”*我支持我原来的评论。 – 2010-09-29 08:10:06