想在Web Page上显示一个Excel Spreadsheet控件允许用户输入信息,提交后直接把信息写入后台数据库。我在Page_Load中写了如下代码:
Sheet1=new System.Web.UI.HtmlControls.HtmlGenericControl();
Sheet1.TagName="object";
Sheet1.ID="Sheet1";
Sheet1.Attributes.Add("classid","clsid:0002E559-0000-0000-C000-000000000046");
Sheet1.Style.Add("width","900px");
Sheet1.Style.Add("height","1500px");
Panel1.Controls.Add(Sheet1);
Sheet1.InnerHtml="<PARAM NAME=\"DataType\" VALUE=\"XMLURL\">"+
                 "<PARAM NAME=\"XMLURL\" VALUE=\"http://"+Server.MachineName+"/WebApplication1/SpreadSheet.xml\">";
其中spreadsheet.xml可以由excel2003自动生成。通过这些代码可以在页面的控件上正确显示出spreadsheet.xml文件内容,但是现在如果用户想要提交,我只能得到一个HtmlGenericControl类的对象,无法得到OWC11.Spreadsheet对象,这样的话无法通过OWC的Object Model来访问Spreadsheet中的数据,各位有什么好的解决方案嘛?

解决方案 »

  1.   

    你定义object. like
    <object id="sheet1" name="sheet1" >
    ...然后你在服务器段用Request.Form["sheet1"]读取一下看能读到什么东西。
      

  2.   

    这样的话在<object>里面一定要加runat="server"的吧,但是对于这个Spreadsheet控件而言,一定要加"classid=clsid:xxxxxxxxxxx",一旦加了runat="server"就会报错,说这个classid不是合法的guid格式,不知道是BUG还是什么。。总之是不行