Я разрабатываю одно приложение для чата в телефоне Windows. Я использую метод Deployment.Current.Dispatcher.BeginInvoke
для обновления пользовательского интерфейса, но во время использования Dispatcher.BeginInvoke
экран ударит. Как решить этот или любой способ обновить интерфейс без застревания?Windows Phone .Deployment.Current.Dispatcher.BeginInvoke влияет на процесс
1
A
ответ
2
Если вы используете диспетчер, вы выполните данный код в потоке пользовательского интерфейса. И пока вы выполняете код в потоке пользовательского интерфейса, пользовательский интерфейс застревает. Нет никакого способа обойти это, поэтому вы должны обязательно выполнить только абсолютный минимальный объем кода в потоке пользовательского интерфейса. Общая схема состоит в том, чтобы извлекать/вычислять данные в фоновом потоке, а затем переключиться на пользовательский интерфейс только для обновления элементов управления. Класс BackgroundWorker
является удобным помощником для достижения этого результата.
спасибо kookiz, как использовать класс рабочего стола для вставки данных в изолированное хранилище, потому что я собираюсь вставлять много данных непрерывно .. – suresh