在TextBlock中使用绑定对文本进行硬编码
在WPF中,有没有办法让TextBlock
的Text
属性包含硬编码文本和特定绑定?
我想到的是以下几点(当然,下面不会编译):
<TextBlock Text="Number of Fans: {Binding Artist.Fans.Count}"></TextBlock>
如果你使用.Net 3.5 SP1,那就是
<TextBlock Text="{Binding Path=Artist.Fans.Count,
StringFormat='Number of Fans: {0}'}" />
在使用上述方法时:
<TextBlock Text="{Binding Path="Artist.Fans.Count",
StringFormat='Number of Fans: {0}'}" />
我发现它有点限制,因为我无法在StringFormat中找到大胆的方法,也不能在StringFormat中使用撇号。
相反,我采用了这种方法,这对我更好:
<TextBlock TextWrapping="Wrap">
<Run>The value</Run>
<Run Text="{Binding Path=MyProperty1, Mode=OneWay}" FontWeight="Bold" />
<Run>was invalid. Please enter it with the format... </Run>
<LineBreak/><LineBreak/>
<Run>Here is another value in the program</Run>
<Run Text="{Binding Path=MyProperty2, Mode=OneWay}" FontWeight="Bold" />
</TextBlock>
使用Binding.StringFormat
:
<TextBlock Text="{Binding Artist.Fans.Count, StringFormat='Number of Fans: {0}'}"/>
链接地址: http://www.djcxy.com/p/44663.html
上一篇: Having hardcoded text with a binding in a TextBlock
下一篇: WPF binding to My.Settings for radiobuttons (using vb.net)