0

我需要每 5 秒运行一次以更新 UI

    public ViewModelCtor()
    {
       var timer = new System.Timers.Timer(5000)
        {
            Enabled = true
        };

        timer.Elapsed += (sender, args) =>
        {
            TimeSinceLastLogin = CalculateTimeSinceLastLogin();
        };


    public string TimeSinceLastLogin
    {
        get { return _timeSinceLastLogin; }
        set
        {
            if (value == _timeSinceLastLogin) return;
            _timeSinceLastLogin = value;
            OnPropertyChanged(new PropertyChangedEventArgs(nameof(TimeSinceLastLogin)));
        }
    }

CalculateTimeSinceLastLogin 只是将 TimeSinceLastLogin 属性设置为一个值。没什么特别的。

计时器在工作线程上执行,因此 UI 不会根据我的判断进行更新。我应该怎么做才能更新 UI?我的解决方案需要是不可知的,因为它可以针对 wpf 或 xamarin。

4

0 回答 0