我的一个应用程序(WPF)中有一个富文本框。现在,我想将富文本框的数据及其格式(例如粗体,彩色等)存储到数据库(SQL Server)中。目前,我将文本框的整个XAML存储在数据库字段中。但是,我不确定这是否是正确的方法。期待您的建议!
答案 0 :(得分:2)
另一种方法是以RTF格式存储数据,这可能比Xaml稍微紧凑,并且提供了额外的好处,可以轻松导入到无法解析Xaml的其他应用程序中:
string GetContentAsRTF(RichTextBox rtb)
{
var range = new TextRange(rtb.Document.ContentStart, rtb.Document.ContentEnd);
using (var stream = new MemoryStream())
using (var reader = new StreamReader(stream))
{
range.Save(stream, DataFormats.Rtf);
stream.Position = 0;
return reader.ReadToEnd();
}
}