我有一个在Window其中显示一组的MediaElements。它们消耗大量内存。有一个预览选项。
预览需要与加载和播放Window的main 同步。MediaElements
目前,我运行了两个控件实例,它们在主程序Window和预览中加载Window,它会减慢整个应用程序的速度。有时也有些MediaElements空白。
是否可以在单独的Windowor中显示UserControl已经运行或添加为子控件的or的实例。PanelCanvasGrid
我有一个在Window其中显示一组的MediaElements。它们消耗大量内存。有一个预览选项。
预览需要与加载和播放Window的main 同步。MediaElements
目前,我运行了两个控件实例,它们在主程序Window和预览中加载Window,它会减慢整个应用程序的速度。有时也有些MediaElements空白。
是否可以在单独的Windowor中显示UserControl已经运行或添加为子控件的or的实例。PanelCanvasGrid
使用多个MediaElements. 不推荐,因为您可以在此处和此处看到。
我建议您尝试使用WPF MediaKit或DirectShowNet库。
WPF MediaKit 提供了MediaElement.
它MediaUriElement可以像这样使用
<DirectShowControls:MediaUriElement 
       Source="{Binding ElementName=fileDialog, Path=FilePath}" 
       Stretch="Uniform" 
       VideoRenderer="VideoMixingRenderer9" 
       LoadedBehavior="Play"/>
VisualBrush通过使用并将其分配给主窗口解决了与主窗口和预览窗口的同步问题,Visual这有效地帮助我减少了内存使用量。
参考:链接:visual-brush-in-wpf