這是一個側面相關的問題這個問題其他: BackgroundWorker in Silverlight ViewModelUI凍結而不是顯示BusyIndicator控件在Silverlight
我有一個TabControl當用戶選擇的菜單選項,其中我加載許多的TabItems。我通過將TabControl ItemsSource綁定到ObservableCollection來加載這個Tabs。當我爲這個集合添加一個新的TabItem時,它完美地顯示出來。
問題是我已經意識到,因爲用戶按下按鈕直到選項卡創建(ViewModel和視圖創建需要幾秒鐘),屏幕凍結。
我試圖在調用「loadTab」之前設置「IsBusy」,但它沒有顯示出來......我嘗試了幾乎所有的異步調用,但UI線程正在使用中,它會引發異常當我創建新的選項卡控件。
是否有任何騙局我失去了?有任何想法嗎???提前致謝。
感謝您的回答。我在我的應用程序中使用WCF異步調用,但這是「本地調用」。創建View和ViewModel需要一點時間,同時屏幕會「凍結」。我想展示一個忙碌的指示器讓用戶知道發生了什麼。 – zapico
我更新了一些代碼的答案,希望它有助於:) –
我的意思是,你仍然可以使用另一個後臺線程來做繁重的工作(不僅在你調用服務時),在調用後臺線程後你可以提供一個有用的UI效果 –