欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用异步方法在XAML中绑定系统时间

程序员文章站 2022-03-29 12:04:47
最近的工作需要在程序界面上显示实时的系统时间,网上查了查大部分都是用Timer或者线程来实现。 个人非常不喜欢用Timer,感觉这东西有点太耗资源,然后思考了下觉得更好的方法应该是使用异步的方法在委托中更新时间,比线程简单,效率和性能上又要比Timer好很多。 实现方法很简单啦,先定义一个DateT ......

最近的工作需要在程序界面上显示实时的系统时间,网上查了查大部分都是用Timer或者线程来实现。

个人非常不喜欢用Timer,感觉这东西有点太耗资源,然后思考了下觉得更好的方法应该是使用异步的方法在委托中更新时间,比线程简单,效率和性能上又要比Timer好很多。

实现方法很简单啦,先定义一个DateTime属性,当然要实现INotifyPropertyChanged属性,以便前台绑定:

使用异步方法在XAML中绑定系统时间

然后是异步方法,在适当的地方调用即可:

使用异步方法在XAML中绑定系统时间

最后Xaml中绑定CurrentTime属性:

<TextBlock Text="{Binding CurrentTime,StringFormat={}{0:yyyy-MM-dd hh:mm:ss t\\M}}"/>

最终效果,还算可以:

使用异步方法在XAML中绑定系统时间