2011-09-25 42 views
0

我有一个使用经典ASP和VB的Web应用程序构建。如何从后端VB代码打印文档?如何在VB中打印?

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click 

End Sub 

我想要做的是让用户点击按钮生成一个字母并发送到打印机?

+0

这不是经典的asp OR vb。它是ASP.NET和VB.NET。 –

回答

0

您可以使用window.print javascript函数,这将打开打印dialogon客户端浏览器允许他选择的打印机和打印页面:

Protected Sub btnPrint_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrint.Click 
    ClientScript.RegisterStartupScript([GetType](), "print", "window.print();", true) 
End Sub 

作为一个侧面说明,你有什么不是经典用VB的ASP应用程序,你有一个经典的ASP.NET WebForms应用程序使用VB.NET作为后台代码。


UPDATE:

如这里的注释部分要求是你如何可以编写一个通用的处理程序,将动态生成HTML,你想打印:

Imports System.Web 
Imports System.Web.Services 

Public Class Print 
    Implements System.Web.IHttpHandler 

    Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest 
     context.Response.ContentType = "text/html" 
     context.Response.Write("<html><body onload=""window.print();""><table><tr><td>value1</td><td>value1</td></tr></table></body></html>") 
    End Sub 

    ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable 
     Get 
      Return False 
     End Get 
    End Property 

End Class 

现在只需转到/Print.ashx

+0

我得到预期的错误类型 – Beginner

+0

在代码中,我想建立一个字母例如,然后打印它 – Beginner

+0

对不起,它看起来像GetType是VB.NET中的一些注册关键字。尝试包装它'[]':'[GetT YPE]()'。 –

0

你可以看看一些报道像水晶报表的框架(常来与VS但你必须从SAP下载它现在。

下面是报告引擎一个很好的教程,都挤满到Visual Studio(我不得不承认我没有太多的经验,但它对我来说看起来很好):Creating an ASP.NET Report