就是有一个计数器,当计数器发生变化时,触发该事件,怎么写?

解决方案 »

  1.   

    private void button3_Click(object sender, System.EventArgs e)
    {
    performanceCounter1.Increment();
    //计数器值增加1
    label1.Text = performanceCounter1.NextValue().ToString();
    //将计数器的值显示在label1控件中 }
    计数器 加1 ;事件识别,可以通过时钟去访问计数器,并给出两次值的比对,发生差异时候触发你要写的事件。识别:this.label1.Text = this.performanceCounter1.NextValue().ToString();
      

  2.   

    两个线程,一个线程对变量加1 ,另一个线程对变量-1,当加1时,触发该事件ShowTextusing System;
    using System.Threading ;namespace Test
    {
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    class Class1
    {
    private static object objCount =0;
    private static int MaxCount =0; public delegate void AddPramEvent();
    /// <summary>
    /// 应用程序的主入口点。
    /// </summary>
    [STAThread]
    static void Main(string[] args)
    {
    Thread thread1 = new Thread(new ThreadStart(AddPro));
    Thread thread2 = new Thread(new ThreadStart(DeletePro));
    thread1.Start();
    thread2.Start();

    } private static void AddPro()
    {  
    while(true)
    {
    objCount = Convert.ToInt32(objCount)+1;
    lock(objCount)
    {
    if(MaxCount+1 ==Convert.ToInt32(objCount))
    {
    MaxCount = Convert.ToInt32(objCount);
    AddPramEvent pram = new AddPramEvent(ShowText);
    pram();
    Console.WriteLine("....."+MaxCount.ToString());
    }
    else
    {
    Console.WriteLine("a"+objCount.ToString());
    }
    }
     Thread.Sleep(1000);
    }
    }
    private static void DeletePro()
    {
    while(true)
    {
    objCount = Convert.ToInt32(objCount)-1;
    lock(objCount)
    {
    Console.WriteLine("d"+objCount.ToString());
    }
      Thread.Sleep(21000);
    }
    }
    private static void ShowText()
    {
    Console.WriteLine("show"+objCount.ToString());
    }

    }
    }
      

  3.   

    我想做一个事件,来触发index变更,
    换句话说我就是想做一个index变更的触发时间.