如何綁定單個TextBlock以表示「Hi,Jeremiah」?如何正確添加前綴(或後綴)到XAML中的數據綁定?
<TextBlock Text="Hi, {Binding Name, Mode=OneWay}"/>
尋找一個優雅的解決方案。那裏有什麼?我試圖避免爲每個前綴/後綴組合編寫一個轉換器。
如何綁定單個TextBlock以表示「Hi,Jeremiah」?如何正確添加前綴(或後綴)到XAML中的數據綁定?
<TextBlock Text="Hi, {Binding Name, Mode=OneWay}"/>
尋找一個優雅的解決方案。那裏有什麼?我試圖避免爲每個前綴/後綴組合編寫一個轉換器。
如果您只需要插入一個值,則可以使用Binding的StringFormat屬性。請注意,此需要.NET 3.5 SP1(或.NET 3.0 SP2),因此只有在可以指望擁有最新Service Pack的生產環境時才使用它。
<TextBlock Text="{Binding Name, Mode=OneWay, StringFormat='Hi, {0}'}"/>
如果你想插入兩個或多個不同的界限值,我通常只是做與包含多個的TextBlocks,例如方向=「橫向」一個StackPanel:
<StackPanel Orientation="Horizontal">
<TextBlock Text="Good "/>
<TextBlock Text="{Binding TimeOfDay}"/>
<TextBlock Text=", "/>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="!"/>
</StackPanel>
我認爲這應該做到這一點。
<TextBlock>
<TextBlock Text="Hi, " />
<TextBlock Text="{Binding Name, Mode=OneWay}" />
</TextBlock>
校正(未成年人)@Joe白的解決方案
<TextBlock Text="{Binding Name, Mode OneWay, StringFormat='Hi {0}}'"/>
單引號都需要申請的StringFormat成功
爲我工作:)
看起來你接受的答案可能是WPF只有 - 你可能會刪除Silverlight標籤。 – 2009-06-23 21:23:33