2015-12-14 3 views
0

я следующее:Разрыв строки в ResourceDictionary строке не работает

<sys:String x:Key="NoDeviceAlert" xml:space="preserve">Your device is currently disabled.&#10;&#13;Please ensure it is turned on and connected.</sys:String> 

Однако это не работает. TextBlock:

<TextBlock Text="{DynamicResource NoDeviceAlert}" Style="{DynamicResource msgTextStyle}" HorizontalAlignment="Center" /> 

содержит оба предложения в одной строке, но удаляет десятичные значения. Я также пробовал шестнадцатеричные значения, а также/r/n.

Как это может не работать?

ОБНОВЛЕНИЕ

<Style x:Key="msgTextStyle" TargetType="TextBlock"> 
    <Setter Property="Foreground" Value="#FFC8DBE7" /> 
    <Setter Property="FontFamily" Value="/Project;component/Utilities/Resources/Fonts/frutiger.ttf#Frutiger Linotype" /> 
    <Setter Property="FontSize" Value="20" /> 
    <Setter Property="TextAlignment" Value="Left" /> 
</Style> 

ResourceDictionary SYS Пространство имен:

xmlns:sys="clr-namespace:System;assembly=mscorlib" 

Приложение для Windows, и рабочий стол с использованием .net 4.5.

ответ

0

Атрибут xml:space="preserve" влияет только на работу с парсером XML. Таким образом, разрывы строк, вкладки и пробелы сохраняются. Вместо того, чтобы вводить явные символы новой строки просто нажмите клавишу ВВОД:

<sys:String x:Key="NoDeviceAlert" xml:space="preserve">Your device is currently disabled. 
Please ensure it is turned on and connected.</sys:String> 
+0

Он по-прежнему находится на одной линии ... даже разделяя его на отдельные строки, заставляет период находиться рядом с символом P. – bl4kh4k

+0

Нет, это работает для меня. Может быть, стиль 'msgTextStyle' вносит некоторые изменения. Пожалуйста, предоставьте это в сообщении. –

+0

Я добавил стиль в сообщение. – bl4kh4k

0

Вы можете попробовать использовать

& #X 0a;

как разлом строки (без этого пространства внутри). Это должна быть работа.

+0

Предположим, что существует пространство между x и 0? – bl4kh4k