qq_25574431 2016-11-10 03:07 采纳率: 50%
浏览 1222
已结题

C# asp.net web窗体 timer控件还有FileSystemWatcher无法修改页面

就是在HTML界面按下一个button后,想实现数据输入,用线程处理,最后返回结果,但是输入处理都没问题,就是无法把结果返回到界面上,连想修改一个textbox里的text也无法做到,刷新也咩有用···
ps:有更好的办法判断线程输出已完成,我之前用timer莫名其妙就是无法跳入tick事件里面;用FileSystemWatcher可以触发事件,但是因为是流输出,有多少行数据就会触发多少回,还会影响到输出。有木有一次性输出的···

代码如下:


        //提交当前行
        protected void Button2_Click(object sender, EventArgs e)
        {
            //           
            if (FileUpload1.HasFile)
            {
                FileUpload1.SaveAs(Server.MapPath("upload") + "//" + FileUpload1.FileName);
                //exceldata是一个datatable,LoadDataFromExcel函数是读取Excel文件返回datatable
                exceldata = LoadDataFromExcel(Server.MapPath("upload") + "//" + FileUpload1.FileName);
                //make_table();
                //显示输入结果
                GridView1.DataSource = exceldata;
                GridView1.DataBind();
                                //调用FileSystemWatcher的函数
                find_out_end("M:\\", "*.txt");

                                //调用timer
                                //timer1.Enable=true;//之前尝试用timer来修改界面也不成功
            }
            else
            {
                TextBox4.Text = "nofile";
            }



        }

其中FileSystemWatcher的触发后的函数:

   public void OnProcess(object source, FileSystemEventArgs e)
        {

            TextBox5.Text = "end";//textbox5是web界面上的一个textbox,但是结果就是不显示,刷新也不行;加断点有路过这句话,但是界面就是没有反应

        }
  • 写回答

3条回答

  • threenewbee 2016-11-10 15:42
    关注

    asp.net不能用timer去刷新页面,因为asp.net的timer是服务器执行的,应该用js定时器去刷新。

    评论

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作