c# - 将 RTF 保存在数据库上并将其加载回 WinForms 应用程序
问题描述
我有一个带有 RichTextBox 控件的 Windows 窗体应用程序。我希望用户在该控件上编写富文本(使用粗体、更改字母大小和所有这些内容),将该富文本保存在数据库中,然后在正确格式化的 Windows 窗体应用程序上再次加载它。
我尝试这样做的方式是,我将包含 RichTextBox.Rtf 属性的内容保存在数据库中的 varchar 字段中,如下所示:
string richText = myRichTextBox.Rtf;
然后将richText 保存在数据库中,与该行中读取的内容完全相同。要将富文本加载回 winform,代码有点棘手:
//Function that receives a string whit rich text and loads it into richTextBox
private void LoadRTF(string RTF)
{
MemoryStream stream = new MemoryStream(ASCIIEncoding.Default.GetBytes(RTF));
myRichTextBox.LoadFile(stream, RichTextBoxStreamType.RichText);
} //LoadRTF
问题在于最后一个代码,当从数据库加载 RTF 时会引发参数异常。知道为什么会这样吗?
解决方案
原来我只是没有转义 SQL 查询中的某些字符。现在一切似乎都很好。
推荐阅读
- python - 用列表理解理解函数
- javascript - 我需要帮助来修复表单中的空白电子邮件
- vue.js - Electron-Vue 应用程序的状态存储在哪里?
- c# - WCF 客户端 P12 证书问题 - 无法解析用于验证签名的 KeyInfo:KeyInfo 'SecurityKeyIdentifier'
- laravel - 如何使用 Datatables Yajra 在 Laravel 上下载文件
- javascript - 渲染进程的electron crashed事件触发太晚?
- c - 将字符串存储在 C 结构中
- google-apps-script - GOOGLE SHEETS : 测试单元格颜色和输出值
- javascript - 如何禁用 Ctrl+P 和 Ctrl+S?在 ng2-pdfjs-viewer 中。现在任何人都可以使用密钥打印或下载。任何建议将不胜感激
- javascript - 如何根据起始字母过滤数组