年齢値が編集可能である必要がないと仮定した場合、WPF 4.0ではRunのTextプロパティがバインド可能になります。プレリリース版を使用していない限り、
<TextBlock x:Name="txtClientAge" >
<Run Text="Age "/><Run Text="{Binding Path=ClientAge}"/><Run Text=" Yrs"/>
</TextBlock>
UPDATE動作しますが(実際にはそのかなりハック)は特にきれいではないでしょうフォーマット文字列溶液にHERESに別の代替:以下のような何かを行うことができます。バインディング(顧客プロパティはint型であると仮定した場合)に、以下のコンバータを使用します。
public class AgeConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
string age = value.ToString();
return "Age " + age + " years";
}
public object ConvertBack(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
string age = value as string;
return Int32.Parse(age.Replace("Age ", " ").Replace(" years", ""));
}
}
「年齢」と「年齢」の部分を編集可能にしますか?私。ユーザーは「年齢40歳」(またはおそらくは単に「40」)をテキストボックス全体に入力して、それを正しく解析できるようにする必要がありますか? –
いずれの場合でも、アプリケーション内にこのようなテキストボックスが1つしかない場合(つまり、再利用する必要がない場合)、StackPanel + 2 TextBlocks + TextBoxソリューションが最も簡単になります。 –
これは単なる読み込み専用として使用され、更新は必要ありません。 – Mitch