條件我有兩個日期時間。一個是當前的,另一個是比賽開始的日期時間。現在我想在後臺線程(我不知道線程)中連續檢查這個分鐘差異。當它符合if(remainingMinutes < = 4)我想更新UI。如何用線程在後臺實現這個?不斷檢查,如果在不同的線程
public RelayCommand OpenSetBets
{
get { return _setBets ?? (_setBets = new RelayCommand(ExecuteSetBets, CanExecuteSetBets)); }
}
private void ExecuteSetBets()
{
_navigation.NavigationToSetBetsDialogue();
}
private bool CanExecuteSetBets()
{
// Thread t = new Thread(newthread);
double? remainingMinutes = null;
if (UK_RaceDetail.Count() != 0)
{
//t.Start();
DateTime CurrentUTCtime = DateTime.UtcNow;
DateTime NextRaceTime = UK_RaceDetail[0].One.Time;
remainingMinutes = NextRaceTime.Subtract(CurrentUTCtime).TotalMinutes;
}
if (remainingMinutes <= 4)
{
return true;
}
else
{
return false;
}
}
更新後的代碼。 我想啓用按鈕如果比賽將在未來4分鐘開始。
從代碼中顯示它真的不清楚你想要什麼,但是WaitHandle或者忙碌循環都應該這樣做。 – CodeCaster
您可以使用計時器對於這一點,創建一個定時器對象與時間,你需要了最新的UI一些這樣的事 –
定時器=新定時器(1000)的區別; //這裏我們設置爲1秒即1000毫秒 \t //這裏設定的時間u需要在烏爾情況 \t timer.Elapsed + =新ElapsedEventHandler(timer_Elapsed); \t timer.Enabled = true; 靜態無效timer_Elapsed(對象發件人,ElapsedEventArgs E) { \t //這裏更新烏爾UI } –