1. ホーム
  2. c#

[解決済み] StringFormatを使用してWPF XAMLバインディングに文字列を追加する

2022-05-18 03:54:15

質問

私は、整数値(この場合、摂氏温度)への一方向のバインディングを持つTextBlockを含むWPF 4アプリケーションを持っています。 XAMLは次のようになります。

<TextBlock x:Name="textBlockTemperature">
        <Run Text="{Binding CelsiusTemp, Mode=OneWay}"/></TextBlock>

これは実際の温度値を表示するためにはうまくいきますが、この値を単なる数字ではなく、℃を含むようにフォーマットしたいと思います(単なる30ではなく、30℃)。 私はStringFormatについて読んでいて、このようないくつかの一般的な例を見てきました。

// format the bound value as a currency
<TextBlock Text="{Binding Amount, StringFormat={}{0:C}}" />

// preface the bound value with a string and format it as a currency
<TextBlock Text="{Binding Amount, StringFormat=Amount: {0:C}}"/>

残念ながら、私が見たどの例も、私がやろうとしているように、バインドされた値に文字列を追加していません。 私はそれが何か簡単なものでなければならないと確信していますが、私はそれを見つけるのに苦労しています。 誰かがそれを行う方法を説明することができますか?

どのように解決するのですか?

最初の例は、あなたが必要としているものです。

<TextBlock Text="{Binding CelsiusTemp, StringFormat={}{0}°C}" />