非常に単純な位置の読み取りがあります。これは、スタイルが適用された単なるTextBlockです。そのスタイルでは、私はそれをそのように設定しました(これよりも多くのプロパティがありますが、簡潔にするためにそれらを取り出しました):
<Style x:Key="NumberStyle" TargetType="{x:Type TextBlock}">
<Setter Property="TextAlignment" Value="Center" />
</Style>
これで、このスタイルを使用するディスプレイが1つあり、0.0から30000.0までの数値が表示されます。問題は、テキストを中央に配置しているため、数字(急激に変化する場合)がいたるところにジャンプし、少し気になることです。これが行われないように文字列をフォーマットしたいと思います。
XAMLでこのConverterParameterを試しました:
ConverterParameter='\{0:00000.0\}'
パディングは適切に行われますが、00032.5のような数値が表示されます。次に、をに置き換えました0
が#
、最終的にはのように動作し{0:0.0}
ます。私はMSDNのドキュメントを調べましたが、他に役立つものは見つかりませんでした。
私が思いつくことができる唯一のことは、これを行うために新しいIValueConverterを作成する必要があるということです。つまり、Convert()メソッドではparameter
、自分の特殊文字を取得して解析する必要があります。そして、これを検出したら、欠落している数字をスペースに置き換えます。
しかし、私がここで本当に学ぼうとしているのは、これは、私が知らないフォーマット文字列で別の文字を使用するだけで実行できるのでしょうか。