-2
我的代碼:無法顯示/隱藏標籤而函數執行
main()
{
label1.Visible=true;
/* code that takes about 1-2 minutes to respond */
label1.Visible=false;
}
現在我無法顯示隱藏&該標籤。
如何顯示和隱藏標籤?
我的代碼:無法顯示/隱藏標籤而函數執行
main()
{
label1.Visible=true;
/* code that takes about 1-2 minutes to respond */
label1.Visible=false;
}
現在我無法顯示隱藏&該標籤。
如何顯示和隱藏標籤?
這是因爲所有的工作都是在一個線程中完成的,這個線程是您的UI
線程。嘗試另一個線程異步執行的辛勤工作:
async void YourMethod()
{
label1.Visible=true;
await Task.Run(() => /* do the work */);
label1.Visible=false;
}
注意YourMethod應該是一個事件處理程序('async void YourMethod(object sender,SomeEventArgs e)'),否則你只能將問題轉移到其他地方。 – 2014-09-21 16:50:14
如果要在代碼執行時更改標籤狀態,則應考慮多線程。 – 2014-09-21 15:46:39
根本原因解釋[這裏](http://stackoverflow.com/a/952964/60761)。下面的「await」答案是一個更好的解決方案。 – 2014-09-21 15:53:37
我認爲你需要調用'Invalidate'然後'Update'。請參閱[Control.Invalidate方法](http://msdn.microsoft.com/en-us/library/598t492a%28v=vs.110%29.aspx)。 – jww 2014-09-21 16:08:59