Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
打印前发生的ASP.NET(C#)事件_C#_Printing - Fatal编程技术网

打印前发生的ASP.NET(C#)事件

打印前发生的ASP.NET(C#)事件,c#,printing,C#,Printing,我在ASP.Net中有一个web表单,后面有C#代码。这是一件简单的事情,而我是个新手,所以我有点被卡住了 在web表单的源代码中,我有一个名为“print”的按钮,看起来像这样: <asp:Button ID="btnPrint" runat="server" onclientclick="window.print();" Text="Print" /> protected void btnPrint_Click(object sender, EventArgs e) {

我在ASP.Net中有一个web表单,后面有C#代码。这是一件简单的事情,而我是个新手,所以我有点被卡住了

在web表单的源代码中,我有一个名为“print”的按钮,看起来像这样:

<asp:Button ID="btnPrint" runat="server" onclientclick="window.print();" Text="Print" />
protected void btnPrint_Click(object sender, EventArgs e)
{
    //get current Date/Time
    string dateTime = DateTime.Now.ToLongDateString() + ", at " + DateTime.Now.ToShortTimeString();

    //set it to labelDate
    lblDate.Text = "Requested on " + dateTime; 

 ScriptManager.RegisterStartupScript(this, this.GetType(), "key", "window.print();", true);

}
所以问题是,当我点击print按钮时,表单会在代码执行之前打印并标记标签(lblDate.Text)

太好了。。。我的noob问题是如何在表单打印之前处理日期/时间戳

谢谢你的建议


标记

我的第一反应是放弃服务器端事件,并在打印调用之前用javascript填充时间戳。

我的第一反应是放弃服务器端事件,并在打印调用之前用javascript填充时间戳。

而不是调用windows.print(),调用添加请求的日期时间的函数。
这将完成工作。

不要调用windows.print(),而是调用添加请求的日期时间的函数。
那就行了。

试试这样的方法:

<asp:Button ID="btnPrint" runat="server" onclientclick="window.print();" Text="Print" />
protected void btnPrint_Click(object sender, EventArgs e)
{
    //get current Date/Time
    string dateTime = DateTime.Now.ToLongDateString() + ", at " + DateTime.Now.ToShortTimeString();

    //set it to labelDate
    lblDate.Text = "Requested on " + dateTime; 

 ScriptManager.RegisterStartupScript(this, this.GetType(), "key", "window.print();", true);

}

试着这样做:

<asp:Button ID="btnPrint" runat="server" onclientclick="window.print();" Text="Print" />
protected void btnPrint_Click(object sender, EventArgs e)
{
    //get current Date/Time
    string dateTime = DateTime.Now.ToLongDateString() + ", at " + DateTime.Now.ToShortTimeString();

    //set it to labelDate
    lblDate.Text = "Requested on " + dateTime; 

 ScriptManager.RegisterStartupScript(this, this.GetType(), "key", "window.print();", true);

}

唯一的问题是你需要做一个完整的服务器回发来完成一些简单的javascript可以处理的事情。如果这不是一个问题,这个解决方案会很好。谢谢大家。我在javascript方面的内容完全是空白的最后,仅仅是添加快捷线路就成功了。这是在我们的内部网站,我们是一个小公司,所以不用担心。我是个傻瓜,所以我做了那么多服务器端的事情。再次感谢!唯一的问题是你需要做一个完整的服务器回发来完成一些简单的javascript可以处理的事情。如果这不是一个问题,这个解决方案会很好。谢谢大家。我在javascript方面的内容完全是空白的最后,仅仅是添加快捷线路就成功了。这是在我们的内部网站,我们是一个小公司,所以不用担心。我是个傻瓜,所以我做了那么多服务器端的事情。再次感谢!欢迎来到Stack Overflow,Mark,我很高兴您的第一次体验如此成功!不过,当你想感谢某人时,我想请你发表评论而不是回答;这不是一个传统的论坛,你可能已经习惯了。因为作为一个未注册的用户,你不能在这里删除你的答案,所以我自己做了。欢迎来到Stack Overflow,Mark,我很高兴你的第一次体验如此成功!不过,当你想感谢某人时,我想请你发表评论而不是回答;这不是一个传统的论坛,你可能已经习惯了。因为作为一个未注册的用户,你不能在这里删除你的答案,所以我自己做了。