这是 VB 中的 asp.net 应用程序。我有一个母版页,它有几个内容占位符有子页面。我在这些子页面或子页面上有数据网格。我正在尝试将这些 ASP:datagrids 导出到 excel。我知道我们有这样做的好例子。我正在使用以下方法:
Dim excelFileName As String = "Filename" + "_" + Date.Today + ".xlsx"
Response.Clear()
Response.Charset = ""
Response.ContentType = "application/vnd.ms-excel"
Response.Buffer = True
Response.AddHeader("content-disposition", "attachment;filename=" + excelFileName)
Dim stringWriter As New System.IO.StringWriter()
Dim textWriter As New HtmlTextWriter(stringWriter)
dgrid.RenderControl(textWriter)
Response.Write(stringWriter.ToString())
Response.End()
我的问题是我无法做到这一点,因为它说要使用此代码,网格和按钮应该位于属性 runat=Server 的标记下。我的试验是。
- 尝试使用 form.control.add(dGrid) 将此网格添加到表单中。它没有让我因为我有 <% %> 代码限制。这是要求,所以我无法摆脱它。
- 加载数据网格后使用 Bind() 方法,这当然不会在 excel 上给我任何值。
- 试图使用母版页从加载的页面中找到运行时的控制。但它仍然说应该在属性 runat=Server 的标记下。
所以问题是:如何在孩子处使用母版页标签(在 Contentplaceholder 中)