List<int> value=new List<int>();每30分
value.add(val)当value.count>=2时
value[value.Count-2]=上次的时间

解决方案 »

  1.   

    你在给a赋值之后把a的值减30分钟,然后赋给b。反正都是实时的。
      

  2.   

    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);
      

  3.   

    a和b都不是事件类型啊DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);
      

  4.   

    a和b都不是时间类型啊DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);
      

  5.   

    dictionary<时间,值>记录A的值,每次插入新的值的时候,让B取半小时前的值
      

  6.   


    原理是一样的
    一开始
    value.add(a);
    b=a;
    这时
    b=value[0]=a
    30钟后
    value.add(a);
    这时value.count>=2
    b=value[value.count-2]=value[0]
    当然,这时你可以为了减少内存开支,当b获得value[0]的值后
    value.RemoveAt(0)把上一次的值给删除掉,这里list.count又变会了1
      

  7.   

    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);是不是不重要,关键是你的a是怎么实时变化的。在哪让他变化的?
    你得知道a是谁让他变化的。
      

  8.   

    实现INotifyPeropertyChanged接口
    在事件参数中记录一下上次值改变的时间事件处理中,判断一下这个时间
    var now = DateTime.Now;
    if((now - e.PreviousChangeTime).TotalMinutes == 30)
    {
        更新b的值
        e.PreviousChangeTime = now;
    }
      

  9.   

    转成整数
    if((int)(now - e.PreviousChangeTime).TotalMinutes == 30)
      

  10.   

    a 是我从现场设备采集上来的
    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);是不是不重要,关键是你的a是怎么实时变化的。在哪让他变化的?
    你得知道a是谁让他变化的。
      

  11.   

    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);是不是不重要,关键是你的a是怎么实时变化的。在哪让他变化的?
    你得知道a是谁让他变化的。
    那就好办了,只要在你每次采集之后算出b的值就行了。
    如果不是时间类型,你可以转换成时间算。
      

  12.   

    没懂
    假如a是一个电机的转速,然后b一直是a半小时之前的数,a一直在变化,b也一直会变化的。
    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);是不是不重要,关键是你的a是怎么实时变化的。在哪让他变化的?
    你得知道a是谁让他变化的。
    那就好办了,只要在你每次采集之后算出b的值就行了。
    如果不是时间类型,你可以转换成时间算。
      

  13.   

    DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);DateTime a = DateTime.Now;//此处是你需要的值
    DateTime b = a.AddMinutes(-30);是不是不重要,关键是你的a是怎么实时变化的。在哪让他变化的?
    你得知道a是谁让他变化的。
    那就好办了,只要在你每次采集之后算出b的值就行了。
    如果不是时间类型,你可以转换成时间算。
    当a变化时,你就重新计算一次b的值不就行了。b的值不就是基于a来确定的吗?你可以用一个事件来实现,当a的值变化时,触发b的setvalue事件,然后b的当前值就等于此时a的值往前推半小时。
      

  14.   

    用一个结构数组记录 A 的每一次变化和发生的时间,当 B 需要等于 A 时,向前推半个小时,读取A值即可。