Aby uzyskać sformatowany tekst, który zostanie zapisany w bazie danych:
string rtfText; //string to save to db
TextRange tr = new TextRange(richTextBox.Document.ContentStart, richTextBox.Document.ContentEnd);
using (MemoryStream ms = new MemoryStream())
{
tr.Save(ms, DataFormats.Rtf);
rtfText = Encoding.ASCII.GetString(ms.ToArray());
}
Aby przywrócić sformatowany tekst pobrany z bazy danych:
string rtfText= ... //string from db
byte[] byteArray = Encoding.ASCII.GetBytes(rtfText);
using (MemoryStream ms = new MemoryStream(byteArray))
{
TextRange tr = new TextRange(richTextBox.Document.ContentStart, richTextBox.Document.ContentEnd);
tr.Load(ms, DataFormats.Rtf);
}
Możesz również użyć formatu XAML, używając DataFormats.XAML podczas ładowania zapisu.