У меня есть считывание позиции, это очень просто - это просто TextBlock со стилем, применяемым к нему. В этом стиле, я просто установить его как так (есть больше свойств, чем это, но я взял их за сжатости):Заполнение числового дисплея в WPF
<Style x:Key="NumberStyle" TargetType="{x:Type TextBlock}">
<Setter Property="TextAlignment" Value="Center" />
</Style>
Теперь у меня есть один дисплей, который использует этот стиль, и он будет отображать число от 0.0 до 30000.0. Проблема в том, что, поскольку я сосредоточен на тексте, число (если быстро меняется) прыгает повсюду, и это немного беспокоит. Я хотел бы отформатировать мою строку, чтобы она не делала этого.
Я попробовал этот ConverterParameter в XAML:
ConverterParameter='\{0:00000.0\}'
и в то время как он делает отступы правильно, я буду получать номера, как 00032.5. Затем я заменил 0
на #
, но это заканчивается тем же, что и {0:0.0}
. Я посмотрел на MSDN docs и не увидел ничего другого, что могло бы помочь.
Единственное, что я могу придумать, это то, что мне пришлось бы написать новый IValueConverter для этого. Другими словами, в методе Convert() мне нужно было бы принять parameter
и проанализировать его для моего собственного специального символа. И затем, когда я это обнаружу, замените недостающие числа пробелами.
Однако, что я действительно пытаюсь узнать здесь, можно ли это сделать, просто используя другой символ в строке формата, о которой я не знаю?
не уверен, для чего предназначен {} впереди? Я предполагаю, что это опечатка, так как это создает ошибку компилятора ... – Dave
Он ускользает от параметра формата в расширении разметки WPF Binding, где символ '{' начинает новое расширение разметки. Я думал, вы используете его в расширении разметки; если нет, просто удалите их. – codekaizen