首页 > 其他分享 >WPF日期时间,不跳秒

WPF日期时间,不跳秒

时间:2023-05-08 19:45:04浏览次数:43  
标签:timer 日期 DateNow 时间 TimeNow new DispatcherTimer WPF Tick

WPF显示日期时间,不跳秒

标签: C# ; WPF


  • 常规: 利用DispatcherTimer实例,通过Tick时间每间隔一秒调用一次timer_Tick方法(自定义),即输出一次日期、时间。通过RaisePropertyChanged(//prism)通知到前端。
public class MainWindowViewModel : BindableBase
    {
    public MainWindowViewModel()
        {            
            DispatcherTimer timer = new DispatcherTimer();
            timer.Interval = new TimeSpan(0, 0, 0, 1);
            timer.Tick += timer_Tick;
            timer.IsEnabled = true;
            
        }
        /**************************************************************/
        /*当前日期*/
        private string _DateNow;
        public string DateNow
        {
            get { return _DateNow; }
            set { _DateNow = value; RaisePropertyChanged(); }
        }
        /*当前时间*/
        private string _TimeNow;
        public string TimeNow
        {
            get { return _TimeNow; }
            set { _TimeNow = value; RaisePropertyChanged(); }
        }
        /*事件处理器*/
         private void timer_Tick(object sender, EventArgs e)
        {
            DateNow = DateTime.Now.ToString("yyyy-MM-dd ");
            TimeNow = DateTime.Now.ToString("HH:mm:ss");
        }
    }
  • 注意: .NET只保证Tick事件 不会提前执行,但不保证其会及时执行 ,所以有一定概率会出现 “跳秒” ,所以可为DispatcherTimer设置高优先级(按需)。如下:
/**********原构造函数修改为:**********/
  public MainWindowViewModel()
      {            
          var priority=new DispatcherPriority();
          priority = DispatcherPriority.Send;
          DispatcherTimer timer = new DispatcherTimer(priority);
          timer.Interval = new TimeSpan(0, 0, 0, 1);
          timer.Tick += timer_Tick;
          timer.IsEnabled = true;            
      }
  • 前端代码如下:
<TextBlock
      Grid.Column="1"
      HorizontalAlignment="Center"
      VerticalAlignment="Center"
      FontSize="18"
      Text="{Binding TimeNow}" />
<TextBlock
      Grid.Column="2"
      HorizontalAlignment="Center"
      VerticalAlignment="Center"
      FontSize="18"
      Text="{Binding DateNow}" />
  • 效果如下
    img

标签:timer,日期,DateNow,时间,TimeNow,new,DispatcherTimer,WPF,Tick
From: https://www.cnblogs.com/Hanwen680/p/17382933.html

相关文章

  • 时间序列的STL分解Python代码——以验潮站数据为例
    1.时间序列分解的作用和意义时间序列通常包括如下几种成分:一个时间序列包含三种影响因素: 长期趋势:在一个相当长的时间内表现为一种近似直线的持续向上、向下或平稳的趋势。季节变动:受季节变化影响所形成的一种长度和幅度固定的短期周期波动周期变动:与季节变动类似,但是波动......
  • 时间管理术
    时间管理术注:本文是《小强升职记》的读书笔记。如何记录和分析时间日志写在前面:时间黑洞的产生源于大脑喜欢做简单事情的特点,刷朋友圈和写报告哪个更简单?当然是刷朋友圈,所以大脑就会倾向于刷朋友圈。当你的注意力被打断之后,如果想要重新集中注意力至少需要15分钟。......
  • 用Python语言进行时间序列ARIMA模型分析
    应用时间序列时间序列分析是一种重要的数据分析方法,应用广泛。以下列举了几个时间序列分析的应用场景:1.经济预测:时间序列分析可以用来分析经济数据,预测未来经济趋势和走向。例如,利用历史股市数据和经济指标进行时间序列分析,可以预测未来股市的走向。2.交通拥堵预测:时间......
  • 去掉时间字符串的时分秒
    如果您在使用类似于Vue.js的储插值语法,可以通过以下方式来去掉时间字符串中的时分秒:<viewclass="info"><viewclass="info_text">活动地点:{{detail.activityAddress}}</view><viewclass="info_text">活动时间:{{detail.gmtStart|formatDate}}~{{det......
  • python时间相关
    目录timedatetime参考博客timetime—Timeaccessandconversions—Python3.10.0documentationimporttime#1970-01-0100:00:00到现在经过了多少秒print(time.time())#返回一个时间元组print(time.localtime())#时间转字符串print(time.strftime('%Y-%m-%d......
  • 微信小程序实现类似elementUI的Timeline时间线效果,自适应页面与文本
    <viewclass="box"><viewwx:for="{{list}}"wx:key="index"class="one"><viewclass="onedot"></view><viewwx:if="{{index!=list.length-1}}"class="oneline......
  • Oracle日期处理整理
    1.获取日期元素注意:1).hh24写法指24小时,Oracle默认是12小时2).分钟用mi,不要用mm,因为与之前的MM冲突1-12小时写法yyyyMMdd24miss(Oracle默认)1-24小时写法yyyyMMddHH24miss获取日期元素:selectto_char(sysdate,'yyyy-mm-ddhh24:mi:ss')fromdual;--日期转化为字......
  • WPF-标记扩展简写
     XMAL标记扩展又名:标签扩展含义:用花括号{}包围起来。语法:{标记扩展类参数}基类:System.Windows.Markup.MarkupExtension <!--标记扩展的简写--><!--例1--><ButtonContent="{BindingRelativeSource={RelativeSourceMode=Self},Path=Command.Text}"/><ButtonContent......
  • MySQL----日期时间函数运用
    1.1获得当前日期+时间(date+time)函数:now()除了 now()函数能获得当前的日期时间外,MySQL中还有下面的函数:current_timestamp()   current_timestamplocaltime()   localtimelocaltimestamp()   localtimestamp    这些日期时间函数,都等同于now()。鉴于......
  • mysql的时间函数 1
    对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6日期和时间类型。这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:mysql>SELECTsomethingFROMtableWHERETO_DAYS(NOW())-TO_DAYS(date_col)<=......