比如,单击一次Button,获得一个时刻,再次单击这个按钮,再次获得一个时刻,怎么计算两次单击事件的时间间隔,求高手指导。

解决方案 »

  1.   

    加个标记符int i=0,第一次按键后记1,第二次记回0
      

  2.   

    傳二個時間進去private string DateDiff(DateTime DateTime1,DateTime DateTime2)
    {
    string dateDiff=null;
    try
    {
    TimeSpan ts1=new TimeSpan(DateTime1.Ticks);
    TimeSpan ts2=new TimeSpan(DateTime2.Ticks);
    TimeSpan ts=ts1.Subtract(ts2).Duration();
    dateDiff=ts.Days.ToString()+"天"
    +ts.Hours.ToString()+"小时"
    +ts.Minutes.ToString()+"分钟"
    +ts.Seconds.ToString()+"秒";
    }
    catch
    {}
    return dateDiff;
    }
      

  3.   

    写个 arraylist,设置为公有,静态,全局 以 时间为value每触发一次 add一次.这样,每次触发时间的时间节点都被记录在案.  你想怎么用这个arraylist都行
      

  4.   

    把第一次的时间记录在viewstate里面
      

  5.   

    添加一个Label空间 内容为空   且隐藏控件  
    再添加一个按钮  完成单击事件
    private void button3_Click(object sender, RoutedEventArgs e)
            {
                DateTime time = DateTime.Now;
                DateTime lastTime;
                TimeSpan span; //时间间隔
               if (label1.Content != null && label1.Content.ToString() != "")
               {
                   lastTime = Convert.ToDateTime(label1.Content.ToString());
                   span = time - lastTime;
                   MessageBox.Show("与上次的时间间隔是:" + span.Seconds.ToString() + "秒"); 
    //span.Minutes表示相差的分钟 还有其它格式可以自己去替换
               }
               label1.Content = time;
            }
      

  6.   


    int start=Environment.TickCount;
    //Your method
    int end=Environment.TickCount-start;
    //end 为你的方法执行的毫秒数。
      

  7.   

    其实.net里有个类:Stopwatch  (命名空间:System.Diagnostics)            Stopwatch sw = new Stopwatch();
                sw.Start();  //开始计时
                ........
                ........
                sw.Stop();   //停止计时            string aa=sw.Elapsed.ToString();  //时间间隔
      

  8.   

    DateTime checkDataTime;
    private void button1_Click(object sender, EventArgs e)
            {
                DateTime dt = DateTime.Now;
                if (checkDataTime != null && checkDataTime.AddSeconds(4) > dt)
                {
                    MessageBox.Show("小于四秒不能点");
                }
                else
                {
                    checkDataTime = dt;
                }
            }