0

我目前有一个 aspx 页面返回一个 html 表单(带有图像和 css)。我想在不重写所有代码的情况下下载此表单的 Word 可编辑版本。可能吗 ?

一个例子:我有一个页面'WebForm2.aspx',其中包含这样的简单内容。

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" 
Inherits="WebApplication15.WebForm2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <h1>Title</h1>
        <asp:CheckBox runat="server" ID="myTest" Text="Doc 1" /><br />
        <asp:CheckBox runat="server" ID="myTest2" Text="Doc 2" /><br />
        <asp:CheckBox runat="server" ID="myTest3" Text="Doc 3" /><br />
        <asp:CheckBox runat="server" ID="myTest4" Text="Doc 4" /><br />
    </div>
    </form>
</body>
</html>

我希望从其他页面获得该按钮,例如一个按钮,可让您在可编辑的 Word 文档中下载“WebForm2.aspx”的内容。

我在 Page_PreRender 方法中添加了这个

Response.AddHeader("Content-Type", "application/msword");

这是部分工作。如果我保存文档 css 并且未加载图像,但如果我只打开可下载的内容 css 并加载图像。

4

1 回答 1

1

MS Word 可以编辑 html 文档,因此通过在标题中添加 Content-Type=application/msword 记录将使浏览器在浏览器中打开您的页面,不幸的是没有 css 和图像。

在页面的预渲染事件中添加以下代码

    Response.AddHeader("Content-Type", "application/msword");
于 2013-04-23T11:04:32.673 回答