У меня возникла следующая проблема с моим приложением для киоска:gui не обновляется
У меня есть окно с несколькими эскизами. Когда пользователь нажимает на миниатюру, отображается другое окно (docview) с информацией, а в центре отображается документ.
Я хотел бы, чтобы docview просматривался мгновенно, а затем начал загрузку документа (загрузка документа занимает 1-3 секунды) и затем добавляет его в интерфейс.
В тот момент, когда я нажимаю пальцем, интерфейсы замирает на секунду или две, а затем docview виден с уже документ ..
Это то, что я делаю:
viewgrid.Children.Add(docView); // the main window uses this grid to display the windows
viewgrid.InvalidateVisual();
viewgrid.UpdateLayout(); // at this point I would like to have the docView visible
docView.showDocument(); //and afterwards, the loading of the document should start and be also visible eventually..
Я пробовал использовать событие LayoutUpdated без успеха. Кроме того, создание showDocument в отдельном потоке не помогло. Я также читал о Application.DoEvents(), но это устарело и, похоже, было плохой практикой.
Как мне это разрешить?
Заранее благодарен!
Я не думаю, что вы вполне понимаете, чего я хочу. Все, что я хочу знать, это если есть какой-то «IsRendered», , так что я знаю, что когда мой макет отображается и отображается, я могу начать загрузку документа. Сам документ является powerpoint, загружаемым dll dll Microsoft PowerPoint. – Daan
Вот что я понял. У вас есть элемент в WPF, который загружает документ. Вы хотите сразу же отобразить элемент, но затем пустым, а затем загрузите документ на своей скорости в фоновом режиме. – Rhyous
Хорошо, но что мне делать, если фоновая работа выполняется с загрузкой ранее? Я не могу контролировать dll powerpoint. – Daan