【Windows Phone 8】 Progressbar相關的UI阻塞的問題

【問題描述】:windows

步驟:服務器

1.客戶端請求服務器端數據,開始請求時,界面彈出PopUp其中顯示Progressbar不停地滾動。異步

2.當服務器端有數據返回時,界面上的列表Listbox開始展現數據,而且隱藏顯示Progressbar的這個Popup。ui

問題出如今第2步,UI線程須要同時加載Listbox展現數據,又要隱藏Progressbar,此時可能會出Progressbar卡住不動,直到Listbox數據加載完成。spa

 

【可能緣由分析】:線程

1.Listbox中圖片解析耗時code

2.Listbox初次加載耗時blog

 

【解決辦法】:圖片

調用UIElement的UpdateLayout()方法強制更新,使得獲取數據後強制隱藏Progressbar。至於具體緣由以及更好的解決方法有待繼續研究。element

 

【備註】:

涉及到UI操做,儘可能使用

Deployment.Current.Dispatcher.BeginInvoke(() =>
                        {
                            //ToDo...
                        });

由於這是異步執行的,可以防止UI阻塞。

相關文章
相關標籤/搜索