У меня есть приложение, которое содержит множество элементов управления на панели, каждое из которых имеет собственный MediaElement, воспроизводящий видео. Я изучал новые возможности виртуализации пользовательского интерфейса в Silverlight 3, чтобы повысить производительность при прокрутке многих из этих элементов управления в меньшем виде порта.
Исходя из моего опыта, я понимаю, что каждый раз, когда элемент управления MediaElement удаляется, а затем повторно добавляется в визуальное дерево, медиа-объект должен создавать буфер. Я предполагаю, что попытка реализовать виртуализацию пользовательского интерфейса на любой пользовательской панели, заполненной элементами управления MediaElement, приведет к тому, что любые неэкранные элементы прекратят воспроизведение, а затем создадут буфер перед воспроизведением, как только они будут прокручены на экране. У кого-нибудь был опыт в этой ситуации?
Если это так, есть ли какие-либо обходные пути или возможные способы реализации виртуализации пользовательского интерфейса с элементами управления, содержащими MediaElements, не влияя на воспроизводимое воспроизведение?