在ASP.NET中,创建项目,在页面Default.aspx上放置一个LABEL
在,Default.cs的Page_Load事件中添加代码:
protected void Page_Load(object sender, EventArgs e)
{
System.Timers.Timer time = new System.Timers.Timer();
time.Interval = 1000;
time.Elapsed += new System.Timers.ElapsedEventHandler(time_Elapsed);
time.Start();//这是一个定时器
}
void time_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
this.Label1.Text=string.Format("当前时间:{0}",DateTime.Now.ToString("HH:mm:ss"));
}
//每秒钟将时间赋值给LABEL,并刷新到页面上显示,需要怎么处理?
问题是这样的,有一个ASP.NET的项目,和一个WINFORM的服务创建SOCKET连接,当我服务器的SOCKET有消息通知ASP.NET客户端的时候,就把WINFORM服务的消息显示在界面上。
你的需求是label只是获取服务器端时间对吗?
给你个js获取服务器端时间的DEMO :http://jsbin.com/ofosix/1
------------------------------------------------------------------------------
解决从 Web 应用程序的客户端监视远程任务进度的持续问题.
相关资料:
使用 SignalR 构建进度栏: http://msdn.microsoft.com/zh-cn/magazine/hh852586.aspx
这个问题我已经解决了~~!谢谢~~!
@有机物: 你是如何解决的?
用js 更简单 你加载页面的时候 pageload就加载一次 timer没用
这个涉及到项目中,有类似的需求,我只是在这里把项目中的需求抽成了一个简单的例子。
这个还是用js来把,http协议是请求-回复,客户端没有请求怎么回复呢
看来对页面生命周期还不怎么了解啊。
如果你必须这样去操作的话,可有尝试下委托操作.