PageOffice .NET 记一次使用
1.根据官方文档,先将Css和js引用到你的项目中(好像5.0以上的版本都不需要引用了,可以试一下),放置一个合适的位置。我是直接把SimpleWord整个文件夹直接引用了,
2.然后再配置我们需要触发在线编辑的事件,
如果要传递参数,我用的是“?参数名称=”这种方式,也可以用:
3.跳转到Word页面,我把Excel Word 和PPT 都用Word页面打开了,只要跳转的时候去判断一下文件的类型就好了:
string fileName = Request.Params["fileName"] == null ? "" : Request.Params["fileName"].ToString(); string fileType = ""; if (id != "" && fileName != "") { string[] fileArray = fileName.Split('.'); fileType = fileArray[1].ToString(); } if (fileType == "doc" || fileType == "docx") { PageOfficeCtrl1.WebOpen(ConvertFiles, PageOffice.OpenModeType.docNormalEdit, "Tom"); } else if (fileType == "xls" || fileType == "xlsx") { PageOfficeCtrl1.WebOpen(ConvertFiles, PageOffice.OpenModeType.xlsNormalEdit, "Tom"); } else if (fileType == "ppt" || fileType == "pptx") { PageOfficeCtrl1.WebOpen(ConvertFiles, PageOffice.OpenModeType.pptNormalEdit, "Tom"); }
4.调整aspx页面的样式,支持多个选项卡切换,但我只用到了一个页面,所以把其他选项卡都注释掉了。我加了一个关闭文件前的验证
//文档关闭前先提示用户是否保存 function BeforeBrowserClosed() { if (document.getElementById("PageOfficeCtrl1").IsDirty) { if (confirm("提示:文档已被修改,若要保存修改请点击保存后再关闭 ?")) { return true; } else { return false; } } }
以上差不多就是使用的基本顺序。但我在部署时遇到了几个问题:
①部署系统的IIS必须使用Windows验证方式,而这个插件在打开时随之会弹出
那么这种情况,技术支持的人建议我
但是.net中没有setHTTPBasic_UserName的方法,只能去赋值:
PageOfficeCtrl1.HTTPBasic_UserName = "yourUserName"; PageOfficeCtrl1.HTTPBasic_Password = "";
这样就可以了,如果还是报错,就把密码置空!一定要像我这样置空!!
②部署iis时候,托管模式一定要选集成模式,经典不可以哦。
③Excel窗口没有在pageoffice插件内,会跳出
大概就是这些,最后十分感谢卓正的售后支持和销售经理,真的很负责也很耐心!!!!