WP7 обновляет пользовательский интерфейс динамически без блокировки потока - PullRequest
3 голосов
/ 16 апреля 2011

Я делаю своего рода приложение для караоке, где мне нужно связать текстовые данные с временными метками с аудиоданными.У меня есть 2 списка, чтобы указать начало и конец аудио интервалов времени и индексов текстовых строк.Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как обновить highlighted text на основе текущего свойства media element's POSITION.

В WP7 нет события «Достигнут маркер» (, у которого серебряный свет имеет ).Поэтому я подумывал об использовании DispatcherTimer .проблема в том, что требуемый ticks является неоднородным, и если я буду обновлять свойство interval каждый тик, точность таймера будет сильно падать, так как позиция медиа-элемента и тик таймера будут падатьсинхронизации очень легко.

Есть идеи, как мне создать свое событие, подобное MarkerReached событию элемента Media?Спасибо-Эгон

1 Ответ

1 голос
/ 18 апреля 2011

Я предполагаю, что у вас есть какая-то форма структуры данных, которая сообщает вам, где находятся маркеры в аудиопотоке, так почему бы не использовать DispatcherTimer с фиксированным интервалом (скажем, 500 миллисекунд) и просто проверитьпротив этой структуры данных, чтобы увидеть, если вы достигли маркера?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...