Ich habe eine Positionsanzeige, die sehr einfach ist - es ist nur ein TextBlock mit einem Style, der darauf angewendet wird. In diesem Stil, habe ich es so wie so (es mehr Eigenschaften als diese sind, aber ich habe sie für Prägnanz out):Auffüllen einer numerischen Anzeige in WPF
<Style x:Key="NumberStyle" TargetType="{x:Type TextBlock}">
<Setter Property="TextAlignment" Value="Center" />
</Style>
Nun, ich eine Anzeige, die diesen Stil verwendet, und es wird eine Anzeige Nummer von 0.0 bis 30000.0. Das Problem ist, dass, da ich den Text zentriere, die Nummer (wenn sie sich schnell ändert) überall herumspringt und etwas beunruhigend ist. Ich möchte meine Zeichenfolge formatieren, so dass dies nicht möglich ist.
habe ich versucht, diesen Converter in XAML:
ConverterParameter='\{0:00000.0\}'
und während es die Polsterung richtig funktioniert, werde ich Zahlen bekommen wie 00.032,5. Ich ersetzte dann die 0
durch #
, aber das verhält sich schließlich wie {0:0.0}
. Ich schaute auf die MSDN docs und sah nichts anderes, das helfen würde.
Das einzige, was mir einfällt, ist, dass ich dafür einen neuen IValueConverter schreiben müsste. Mit anderen Worten, in der Convert() - Methode müsste ich parameter
nehmen und es für mein eigenes Sonderzeichen analysieren. Und wenn ich dies feststelle, ersetze die fehlenden Zahlen durch Leerzeichen.
Aber was ich hier wirklich zu lernen versuche ist, kann dies getan werden, indem einfach ein anderes Zeichen in der Formatzeichenfolge verwendet wird, von der ich nichts weiß?
nicht sicher, wofür {} in Front ist? Ich nehme an, das ist ein Tippfehler, da das einen Compilerfehler erzeugt ... – Dave
Es entkommt der format-Parameter in einer WPF-Binding-Markup-Erweiterung, wo das '{' - Zeichen eine neue Markup-Erweiterung beginnt. Ich dachte, du würdest es in einer Markup-Erweiterung verwenden; Wenn nicht, entferne sie einfach. – codekaizen