控件的click和timer的事件对应的委托是不通的。不能这样写。

解决方案 »

  1.   

    你的委托System.EventHandler和click事件对应,和timer的事件的代理是ElapsedEventHandler 两者必须匹配才行。
      

  2.   

    楼主希望Button在click是触发timer的事件吗!
    你在click事件中加入:
     Timer1.Start()
      

  3.   

    谢谢yohomonkey(关在笼子里的猴)和liuzhonghe(呆头鹅) yohomonkey,你说的没错,我希望在点击button以后,利用OnClick事件
    触发Timer进行计时,等到了一定时间以后重新进行查询。现在不知道怎么
    使用这个Timer我改成<asp:button Text="查询" OnClick="Timer1.Start()" runat="server" /> 
    以后,提示如下:
    编译器错误信息: CS0117: “ASP.alarm8_aspx”并不包含对“Timer1”的定义
    怎么做呢?
      

  4.   

    各位老大,发扬一下csdn人乐于助人的精神吧。谢谢啦!
      

  5.   

    不能这样写的!
    Timer1.Start()
    放在后台的Button_click事件中去。
      

  6.   

    <asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 561px; POSITION: absolute; TOP: 129px" runat="server" Text="Button" OnClick="Button_Click"></asp:Button>
     Public Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
            Timer1.Start()
        End Sub
      

  7.   

    谢谢yohomonkey编现在是这样的:译器错误信息: CS0246: 找不到类型或命名空间名称“Timer1”(是否缺少 using 指令或程序集引用?)
    哪里还要改一下?
      

  8.   

    呵呵呵, 你的timer控件页面上如果有,请看看代码的声明部分是否有:
      Protected WithEvents Timer1 As System.Timers.Timer
    如果没有,请把timer控件从页面去掉,保存工程,重新添加。
      

  9.   

    我不是用VS.NET做的,用的是editplus。
    没有Protected WithEvents Timer1 As System.Timers.Timer这一行
    那么怎么改呢?
      

  10.   

    editplus肯定没有Protected WithEvents Timer1 As System.Timers.Timer
    我想想。
      

  11.   

    没有Protected WithEvents Timer1 As System.Timers.Timer 那你的Timer1_Elapsed 事件哪来的?晕
      

  12.   

    呵呵~别晕。我把主要的代码贴出来
    private void CreateTimer()
    {
       System.Timers.Timer Timer1 = new System.Timers.Timer();//噢!你说的是这句吧
       Timer1.Enabled = true;
       Timer1.Interval = 45000;
       Timer1.Elapsed += new System.Timers.ElapsedEventHandler(Timer1_Elapsed);
    }protected void Timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
    {
       alarm();
    } void Btn_Click(Object Sender, EventArgs e) {
               Timer1.Start();
              }void alarm ()   
    {   
    **********
    <asp:button Text="查询" OnClick="Btn_Click" runat="server" /> 
      

  13.   

    你的Timer1是在CreateTimer中定义的局部变量!你现在把Timer1的定义加成全局变量,CreateTimer如下:
    private void CreateTimer()
    {
       Timer1 = new System.Timers.Timer();//噢!你说的是这句吧
       Timer1.Enabled = true;
       Timer1.Interval = 45000;
       Timer1.Elapsed += new System.Timers.ElapsedEventHandler(Timer1_Elapsed);
    }现在你的Btn_Click可以正常使用了吧?