gpt4 book ai didi

asp.net - 验证渲染在服务器表单 : no suitable method found to override C# error

转载 作者:行者123 更新时间:2023-12-02 21:17:22 28 4
gpt4 key购买 nike

我正在编写一个代码来导出到 Excel GridView 。我正在使用 updatepanel,因此整个页面不会加载。所以,我写了一个代码:

aspx.cs代码

protected void Export_click(object sender, EventArgs e)
{
GridView gv = (GridView)TBMMasterContentPalceHolder.FindControl("myGridView");
Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=Suppliers.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
gv.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();

}
public override void VerifyRenderingInServerForm(Control control) //To prevent Export To Excel Error
{
}

asp代码

<asp:Button ID="btnExport" runat="server" Text="  Export  " OnClick="Export_click" />
<Triggers>
<asp:PostBackTrigger ControlID="btnExport" />
</Triggers>

但是在这里,我在 VerifyRenderingInServerForm(Control control) 函数中收到错误。错误是:

VerifyRenderingInServerForm(System.Web.UI.Control)': no suitable method found to override

如何解决这个错误?

最佳答案

我得到了答案。删除 VerifyRenderingInServerForm(Control control) 函数并使用

System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
Controls.Add(form);
form.Controls.Add(gv);
form.RenderControl(htmlWrite);

所以,我们的最终代码是

Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=myfile.xls");
Response.Charset = "";
Response.ContentType = "application/vnd.xls";
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);

System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
Controls.Add(form);
form.Controls.Add(gv);
form.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();

关于asp.net - 验证渲染在服务器表单 : no suitable method found to override C# error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29817265/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com