In silverlight, se un controllo casella di testo accetta Ritorna, tutte le nuove righe sono \ r, anche se Environment.Newline è \ r \ n. Perchè è questo? (WPF ha \ r \ n come newline per textbox)Perché un riquadro di testo Silverlight utilizza r per una nuova riga anziché Environment.Newline ( r n)?
risposta
Penso per compatibilità con altri sistemi operativi.
Silverlight è disponibile sui sistemi operativi Linux e Mac. Entrambi (e la maggior parte) di questi sistemi operativi sono basati su unix e unix utilizza '\ r' per le nuove linee. (per quanto ne so solo MS usando '\ r \ n')
Mentre guardare il codice sorgente della struttura sembra come se gli sviluppatori MS usassero per lo più '\ r \ n' invece di usare Environment.NewLine.
Sono d'accordo con la risposta di ertan. Mi sono imbattuto in uno scenario in cui questo è un inconveniente.
Abbiamo un'applicazione che raccoglie i dati di stringa da un utente attraverso una casella di testo Silverlight e archivia tali dati in un database SQL Server, che è molto comune. Un problema si presenta quando altri componenti dell'applicazione utilizzano i dati di stringa memorizzati che prevedono interruzioni di riga per essere rappresentati da "\r\n"
. Un esempio di tale componente è la soluzione di reporting di Telerik: vedere Line break issue in multi line text boxes.
ho superato questo problema utilizzando questo convertitore valore:
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. È una nuova riga = \ n OR \ r \ n?
- 2. Perché "\ n" fornisce una nuova riga su Windows?
- 3. carattere di nuova riga nell'area di testo
- 4. Perché PHP aggiunge "\ r \ n" a una stringa vuota?
- 5. Sostituzione "\ r \ n" con "\ n"
- 6. Costante di stringa per una nuova riga + scheda?
- 7. Regex mettere a nudo \ r \ n o \ r \ n
- 8. Come rappresentare un'interruzione di riga o una nuova riga in Silverlight textBox
- 9. Convert \ r testo \ n così readlines() funziona come previsto
- 10. Perché le newline di C# textbox.AppendText() scompaiono quando si utilizza \ n come terminatore di riga?
- 11. Differenza tra "\ n" e Environment.NewLine
- 12. La funzione jQuery .val() ripulisce '\ r \ n' da textarea - perché?
- 13. Git: converti ritorno a capo \ r su nuova riga \ n con git hook?
- 14. Aggiunta di una nuova riga in iTextSharp
- 15. QString :: split() e "\ r", "\ n" e "\ r \ n" convenzione
- 16. Sostituzione \ r \ n (caratteri di nuova riga) dopo aver eseguito json_encode
- 17. Avvia una nuova riga nella casella di testo wpf
- 18. Visualizza grafica nel riquadro della finestra dei grafici anziché aprire una nuova finestra in RStudio
- 19. R: conteggio dati. Netto per riga
- 20. Java: Come leggere un file riga per riga ignorando "\ n"
- 21. differenza tra PHP \ r \ n \ n
- 22. Trasmettere carattere di nuova riga "\ n"
- 23. R rimuovere caratteri speciali dal riquadro dati
- 24. Nuova riga nell'area di testo
- 25. rimuovi/n/r in tinyMCE
- 26. tabella R per riga matrice
- 27. R - Lettura STDIN riga per riga
- 28. selezione di riga casuale in R
- 29. Come posso rilevare se un file ha feed di riga Unix (\ n) o feed di riga di Windows (\ r \ n)?
- 30. Come aggiungere testo a un file su una nuova riga
Vedi anche http://connect.microsoft.com/VisualStudio/feedback/details/419751/silverlight-textboxes-environment-newline – Koen
sbagliato. Sia UNIX che MacOS X usano entrambi \ n. L'unico sistema da usare \ r era MacOS v.9 e sotto. –