2009-06-23 9 views

cevap

23

Eklemek istediğiniz tek bir değeriniz varsa, Binding'ın StringFormat özelliğini kullanabilirsiniz. Bu 'un .NET 3.5 SP1 (veya .NET 3.0 SP2) gerektirdiğini unutmayın, bu nedenle yalnızca en son hizmet paketine sahip üretim ortamınıza güvenebiliyorsanız kullanın.

<StackPanel Orientation="Horizontal"> 
    <TextBlock Text="Good "/> 
    <TextBlock Text="{Binding TimeOfDay}"/> 
    <TextBlock Text=", "/> 
    <TextBlock Text="{Binding Name}"/> 
    <TextBlock Text="!"/> 
</StackPanel> 
+1

Kullanmak için 3.5SP1'in yüklü olduğundan emin olun. – rmoore

+0

Teşekkürler! Süper çalıştı! – Jeremiah

+0

@rmoore: İyi yakalama. Bunu öne çıkarmak için cevabımı düzenledim. –

0

bu gerektiğini düşünüyorum: Eğer, ben genellikle sadece örneğin, birden TextBlocks içeren Oryantasyon = "Yatay" ile StackPanel yapan iki veya daha fazla farklı ciltli değerleri eklemek istiyorsa

<TextBlock Text="{Binding Name, Mode=OneWay, StringFormat='Hi, {0}'}"/> 

yap.

<TextBlock> 
    <TextBlock Text="Hi, " /> 
    <TextBlock Text="{Binding Name, Mode=OneWay}" /> 
</TextBlock> 
+2

Joe White'ın StringFormat çözümü muhtemelen gitmek için bir yoldur. Bunu unutmuştum. –

1

düzeltme (minör)

<TextBlock Text="{Binding Name, Mode OneWay, StringFormat='Hi {0}}'"/> 

tek tırnak başarıyla
benim :) çalıştı StringFormat uygulamak için gerekli olan White'ın çözüm @Joe için

sizin kabul cevap WPF olabilir gibi