我想在用戶界面加載內容時顯示進度環。在WPF中查看數據加載時顯示進度圓
我嘗試在shellView中使用布爾值並將其設置爲true或false。
IsBusy=true;
但是,由於我使用的是Caliburn Micro for MVVM,因爲UI會在後臺工作時凍結,所以View並未顯示進度環。我嘗試使用後臺工作,但不工作。
我想在我的視圖忙時顯示進度指示器。可能會加載一個ComboBox或做一些後臺任務。
我想在用戶界面加載內容時顯示進度環。在WPF中查看數據加載時顯示進度圓
我嘗試在shellView中使用布爾值並將其設置爲true或false。
IsBusy=true;
但是,由於我使用的是Caliburn Micro for MVVM,因爲UI會在後臺工作時凍結,所以View並未顯示進度環。我嘗試使用後臺工作,但不工作。
我想在我的視圖忙時顯示進度指示器。可能會加載一個ComboBox或做一些後臺任務。
如果您正在執行後臺任務(例如從Web服務檢索數據),則可以使用.Net 4.0中的BackgroundWorker
或Task.Factory.StartNew()
在單獨的線程中執行該操作(而不是在所謂的「UI線程」)。這將允許您的View在執行後臺操作時保持響應。
現在,在加載視圖本身的情況下,您無法在單獨的線程中執行此操作,因此無法阻止UI凍結一段時間,直至完全加載。
因此,一個選項是在一個單獨的線程中創建一個「覆蓋窗口」(因此有它自己的調度程序),它將是一個透明窗口,位於當前正在加載的窗口的「上方」(按Z順序) 。覆蓋窗口保持響應,因爲它具有自己的調度程序,因此您可以顯示加載指示器或動畫,並在加載完成時將其刪除。
Here就是我所說的一個例子。
我會試試這個, –
我想要一個適用於Caliburn Micro的解決方案 –