2024年终活动

DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

DevExpress ASP.NET在线示例:RichEdit - 如何保存和加载数据库中的文档

来源:   发布时间:2018-04-19   浏览:3527次

此代码示例演示如何使用二进制列从数据库中保存和还原RichEdit文档。

加载文档:

  • 将具有二进制属性(要显示的富文本内容)的模型传递给RichEdit的PartialView。
  • 使用RichEditExtension.Open方法打开具有指定/唯一文档ID和必需的富内容类型的新文档,并从传递的模型检索二进制内容(参见RichEdit.al源代码文件):
[C#]
@Html.DevExpress().RichEdit(settings => {
    settings.Name = "RichEditNameHere";
    settings.CallbackRouteValues = new { Controller = ..., Action = "ActionMethodThatHandlesRichEditCallbacks" };
}).Open(UNIQUE_DOCUMENT_ID_HERE, RICH_TEXT_FORMAT_HERE, () => { return MODEL_BINARY_PROPERTY_HERE; }).GetHtml()

 

[VB.NET]
@Html.DevExpress().RichEdit( _
    Sub(settings)
            settings.Name = "RichEditNameHere"
            settings.CallbackRouteValues = New With {.Controller = "...", .Action = "ActionMethodThatHandlesRichEditCallbacks"}
    End Sub).Open(UNIQUE_DOCUMENT_ID_HERE, RICH_TEXT_FORMAT_HERE, _
              Function()
                      Return MODEL_BINARY_PROPERTY_HERE
              End Function).GetHtml()

 

保存文档:

  • 单击内置工具栏的“保存”按钮/项。
  • 使用RichEditSettings.save属性来处理DocumentManager.AutoSaving事件。
  • 通过RichEditExtension.SaveCopy方法检索修改后的内容,将其保存到相关绑定模型的二进制属性,并将EventArgs Handled属性设置为True(参见HomeController源代码文件):
[C#]
settings.Saving = (s, e) =>
{
    byte[] docBytes = RichEditExtension.SaveCopy("RichEditName", DevExpress.XtraRichEdit.DocumentFormat.Rtf);
    DXWebApplication1.Models.DataHelper.SaveDocument(docBytes);
    e.Handled = true;
};

 

[VB.NET]
settings.Saving = Sub(s, e)
    Dim docBytes As Byte() = RichEditExtension.SaveCopy("RichEditName", DevExpress.XtraRichEdit.DocumentFormat.Rtf)
    DXWebApplication1.Models.DataHelper.SaveDocument(docBytes)
    e.Handled = True
End Sub

买 DevExpress Universal Subscription  免费赠 万元汉化资源包1套!

限量15套!先到先得,送完即止!立即抢购>>

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/1132.html

相关产品: DevExpress Universal Subscription,

扫码咨询
电话咨询
023-68661681
返回
顶部