我的歡迎頁面中有一個按鈕,但我想等待大約3秒鐘後才允許用戶按下它。這是爲了讓用戶被迫閱讀一個快速的小信息性陳述。我正在XAML中默認禁用按鈕,然後在我加載的事件中,我想啓動計時器,並在3秒鐘過去後啓用按鈕。從這裏引用前一個問題How to Pause without Blocking the UI我有以下,但在嘗試啓用按鈕如何在啓用控件之前等待
WelcomePage.xaml
<Button x:Name="welcomeButton" IsEnabled="False" Content="Welcome" Click="welcomeButton_Click"/>
WelcomePage.xaml.cs
void WelcomePage_Loaded(object sender, RoutedEventArgs e)
{
Task.Delay(TimeSpan.FromSeconds(3.0)).ContinueWith(t =>
{
welcomeButton.IsEnabled = true; //UnauthorizedAccessException error
});
}
是,當我得到一個UnauthorizedAccessException
有更好的方法來做到這一點?所有用戶在這個頁面上做的事情是閱讀一個簡短的聲明,那麼是否有必要阻止UI線程?在這種情況下的任何建議或意見將不勝感激。
這偉大的工作。我以前沒有用過await/async。你能給出一些背景信息,瞭解到底發生了什麼? – Matthew
@Matthew網上有很多關於它的信息 - 但它比寫入評論的內容複雜得多。 –