Конечно. Я использовал взаимодействие HTML DOM по нескольким причинам.
Во-первых, при миграции существующего приложения ASP.NET на Silverlight. В архитектуре, с которой мы работали, приложение было очень сильно основано на AJAX с большим количеством обратных вызовов. Вместо того, чтобы изобретать колесо для Silverlight, мы смогли использовать взаимодействие DOM для создания моста, чтобы элемент управления Silverlight мог выполнять обратный вызов аналогичным образом. Это означало использование информации безопасности и представления состояния ASP.NET для извлечения информации с сервера и загрузки в приложение Silverlight. Мы уже возвращали данные в формате JSON, поэтому было легко разобрать их обратно в приложение Silverlight.
Другим примером является взаимодействие со сторонними элементами управления и службами. Например, Google Analytics предоставляет богатые функции отслеживания страниц. Этот проект является ярким примером:
http://silverlightanalytics.codeplex.com/
Там, где приложение может интегрироваться и даже если вы работаете в Silverlight, вы по сути отслеживаете клики, действия и просмотры страниц.
Другое место, где я использовал это, это когда Silverlight не используется как приложение, а скорее как часть или элемент управления на странице. Хотя элементы управления Silverlight могут взаимодействовать друг с другом с помощью локальной связи, это не работает с другими элементами управления не Silverlight. Используя мост HTML-DOM, вы можете легко создать связь между компонентами на основе JavaScript. Может быть, например, элемент управления Silverlight представляет собой интерактивную карту мира, которая позволяет вам просматривать регион. Когда вы выбираете регион, он вызывает событие JavaScript, которое другие элементы управления прослушивают и обновляют по этой причине.
Вы также можете использовать Silverlight в качестве элемента управления, например, элемента управления Captcha, где ваша форма использует мост DOM для проверки ввода пользователя в приложение Silverlight.
Я видел приложения облака тегов, в которых элемент управления Silverlight использует взаимодействие DOM для обхода текущей страницы, а затем генерирует анимированное облако тегов на основе этого.
Надеюсь, они предоставят примеры из реального мира.