En Silverlight, si un TextBox acepta Retorno, todas las líneas nuevas son \ r, aunque Environment.Newline es \ r \ n. ¿Por qué es esto? (WPF tiene \ r \ n como nueva línea para el cuadro de texto)¿Por qué Silverlight TextBox usa r para una línea nueva en lugar de Environment.Newline ( r n)?
¿Por qué Silverlight TextBox usa \ r para una línea nueva en lugar de Environment.Newline (\ r \ n)?
Respuesta
Creo que debido a la compatibilidad con otros sistemas operativos.
Silverlight está disponible en sistemas operativos Linux y Mac. Ambos (y la mayoría) de estos sistemas operativos están basados en Unix y Unix usa '\ r' para líneas nuevas. (Hasta ahora solo sé MS usando el '\ r \ n')
Mientras mira el código fuente del framework parece que los desarrolladores de MS solían escribir '\ r \ n' en lugar de usar Environment.NewLine.
Acepto la respuesta de ertan. Me encontré con un escenario en el que esto es un inconveniente.
Tenemos una aplicación que recopila datos de cadena de un usuario a través de un cuadro de texto de Silverlight y almacena esos datos en una base de datos de SQL Server, que es muy común. Se produce un problema cuando otros componentes de la aplicación utilizan los datos de cadena almacenados esperando saltos de línea representados por "\r\n"
. Un ejemplo de tal componente es la solución de informes de Telerik: Ver Line break issue in multi line text boxes.
que superaron este problema mediante el uso de este convertidor de valores:
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);
}
}
- 1. ¿Hay una línea nueva = \ n OR \ r \ n?
- 2. Comience una nueva línea en wpf textbox
- 3. ¿Por qué "\ n" da una nueva línea en Windows?
- 4. Reemplazando "\ r \ n" por "\ n"
- 5. Regex para despojar \ r \ n o \ r \ n
- 6. ¿El retorno de carro \ ry la nueva línea \ n siempre deben usarse juntos? \ r \ n
- 7. QString :: split() y "\ r", "\ n" y "\ r \ n" convención
- 8. ¿Por qué Vim en Windows usa \ n para buscar?
- 9. ¿Qué salto de línea en el encabezado de php mail, \ r \ n o \ n?
- 10. Vim: \ n vs. \ r
- 11. ¿Cuál es la diferencia entre \ n y \ r \ n?
- 12. ¿Qué significan \ r y \ n en PHP?
- 13. Reemplazando \ r \ n (caracteres de nueva línea) después de ejecutar json_encode
- 14. R - Leer STDIN línea por línea
- 15. Git: convertir retorno de carro \ r a la nueva línea \ n con git hook?
- 16. ¿Constante de cadena para una nueva línea + pestaña?
- 17. diferencia entre PHP \ r \ n \ n
- 18. jQuery nueva línea \ n
- 19. Lectura \ r (retorno de carro) vs \ n (nueva línea) desde la consola con getc?
- 20. ¿Por qué las líneas nuevas C# textbox.AppendText() desaparecen cuando se usa \ n como terminador de línea?
- 21. Diferencia entre "\ n" y Environment.NewLine
- 22. ¿Qué mejores prácticas usa para programar en R?
- 23. ¿Qué configuración de R # reformatea esta línea?
- 24. Regex (C#): Reemplace \ n con \ r \ n
- 25. ¿Qué significa, por ejemplo,% +% do? en R
- 26. php \ r y \ n lo mismo?
- 27. json respuesta contiene \ n \ r
- 28. ¿Por qué todos mis saltos de línea cambian de "/ r/n" a "/ n /" y cómo puedo evitar que esto suceda?
- 29. Reemplazar \ n con \ r \ n en el archivo Unix
- 30. ConfigurationManager.AppSettings convierte "\ n" en "\\ n" ¿por qué?
Ver también http://connect.microsoft.com/VisualStudio/feedback/details/419751/silverlight-textboxes-environment-newline – Koen
incorrecto. UNIX y MacOS X ambos usan \ n. El único sistema para usar fue MacOS v.9 y siguientes. –