如何在DataTemplate中为数据绑定值加下划线?

时间:2008-12-11 15:45:22

标签: wpf data-binding xaml .net-3.5

如果我想在TextBlock中显示带下划线的值,我必须使用Run元素。 (如果有更好/更简单的方式,我很乐意听到它。)

<TextBlock>
  <Run TextDecorations="Underline" Text="MyText" />
</TextBlock>

理想情况下,要在DataTemplate中实现它,它看起来像这样:

<DataTemplate x:Key="underlineTemplate">
  <TextBlock>
    <Run TextDecorations="Underline" Text="{Binding Value}" />
  </TextBlock>
</DataTemplate>

但这不起作用,因为Run的Text属性不是DependencyProperty,因此您无法对其进行数据绑定。有谁知道我怎么能做到这一点?

2 个答案:

答案 0 :(得分:2)

TextDecoration是一个附加属性,因此它也可以应用于TextBlock。您可以通过模板化TextDecorations属性来创建一些非常酷的效果。

请参阅此MSDN article

<TextBlock TextDecorations="Underline" Text="{Binding Value}" />

答案 1 :(得分:0)

这对我有用:

<TextBlock Text="MyText" TextDecorations="Underline" />