Хорошо. В моем классе есть метод asyn c, который просто сохраняет все содержимое панели стека в файл PNG. Поэтому я придерживаюсь некоторых логик c, показанных ниже:
- Экспорт панели стека png
- Скрыть некоторые метки и отобразить другие
- Повторный экспорт панели стека
Все это внутри моего метода, но у меня проблемы с этой видимостью. После скрытия / показа (visibility = Visibility.Collapsed) кажется, что видимость не изменяется во времени для рендеринга на png. Таким образом, делая это выше, ярлыки иногда отображаются, а иногда нет при последнем экспорте. Но если я поставлю некоторую задержку между ними, это сработает:
- Экспорт панели стека png
- Скрыть некоторые метки и отобразить другие
- await Task.Delay (1000 )
- Снова экспортируйте панель стека
Так что я почти уверен, что после того, как я изменил видимость, уходит некоторое время на обновление самого интерфейса. Как я могу ждать изменений пользовательского интерфейса, чтобы я мог быть уверен, что мой второй экспорт будет выполнен только тогда, когда все будет готово?
Примечание. Все эти логики c находятся внутри одной функции asyn c, которая использует await для КАЖДОГО вызова asyn c внутри нее. Проблема на самом деле, когда я сделал обновления, такие как видимость, и попытался отрисовать файл png.