Ответ 1
Я согласен с ответом ertan. Я столкнулся с сценарием, в котором это неудобно.
У нас есть приложение, которое собирает строковые данные от пользователя через текстовое поле Silverlight и сохраняет эти данные в базе данных SQL Server, что очень часто встречается. Возникает проблема, когда другие компоненты приложения используют, что хранящиеся строковые данные, ожидающие разрыва строки, должны быть представлены "\r\n"
. Одним из примеров такого компонента является решение для отчетности Telerik: см. Ошибка разрыва строки в многострочных текстовых полях.
Я преодолел эту проблему, используя этот преобразователь значений:
public class LineBreakCorrectionConverter : IValueConverter
{
private const string CR = "\r";
private const string CRLF = "\r\n";
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string text = value as string;
if (text == null)
return null;
return text.Replace(CRLF, CR);
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string text = value as string;
if (text == null)
return null;
return text.Replace(CR, CRLF);
}
}