Хотя это старый вопрос, я только что столкнулся с проблемой и решил ее иначе, чем заданные ответы. Может быть, это может быть полезно для других.
Я заметил, что хотя мои XML-файлы выглядели так:
<tag>
<subTag>content with newline.
to display</subTag>
</tag>
Когда он был прочитан в мой код C #, строка имела двойную обратную косую черту.
\r\n
Чтобы исправить это, я написал ValueConverter, чтобы снять лишнюю обратную косую черту.
public class XmlStringConverter : IValueConverter
{
public object Convert(
object value,
Type targetType,
object parameter,
CultureInfo culture)
{
string valueAsString = value as string;
if (string.IsNullOrEmpty(valueAsString))
{
return value;
}
valueAsString = valueAsString.Replace("\r\n", "
");
return valueAsString;
}
public object ConvertBack(
object value,
Type targetType,
object parameter,
CultureInfo culture)
{
throw new NotImplementedException();
}
}