Я думаю, что это очень простой вопрос, но я не могу его запустить. Я хочу показать фиксированное число внутри моего представления WPF без привязки. Это число равно 0,001 или по-немецки 0,001. Смотрите разделитель. Теперь, если я переключаю язык пользовательского интерфейса, разделитель чисел должен быть обновлен до правильного языка.
<TextBlock>
<Run Text="0.001" />
<Run Text=" " />
...
</TextBlock>
Это должно быть чрезвычайно тривиально, и я думаю, что StringFormat должен соответствовать потребностям, но, как я уже сказал, я не могу заставить его работать. Спасибо за вашу помощь
Решение: спасибо, что @Corentin Pane указал мне на решение. Как он сказал, мне нужно объявить значение
<TextBlock>
<TextBlock.Resources>
<system:Double x:Key="MinValue">0.001</system:Double>
</TextBlock.Resources>
<Run Text="{Binding Source={StaticResource MinValue}, Mode=OneTime, StringFormat='N3', ConverterCulture={x:Static gl:CultureInfo.CurrentCulture}}" />
<Run Text=" " />
...
</TextBlock>
"0.001"
— это строка, а не число; По умолчанию WPF не знает, что вы пытаетесь отобразить здесь число. Возможные решения см. в этой теме. - person Kilazur   schedule 05.02.2020