- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 wpf 中使用 aforge:videosourceplayer,我遇到的麻烦是:为了在 wpf 中使用 aforge:VideoSourcePlayer,我们必须将它放在 WindowsFormsHost 标签中。如果我不想使用 WindowsFormsHost,还有其他选择吗?
<WindowsFormsHost Margin="5,5,5,201" Name="windowFormsHost" Panel.ZIndex="0">
<aforge:VideoSourcePlayer x:Name="videoSourcePlayer" Height="200" Margin="12,30,0,0" Width="360">
</aforge:VideoSourcePlayer>
感谢任何帮助,谢谢。
最佳答案
不幸的是没有,因为 WinForms 元素的绘制方式与 WPF Elemenets 不同,因此必须放置在单独的 hWND 中(参见下面的链接)。
您没有要求它,但我相信您正在寻找替代方案,因为您遇到了 Airspace Problem在 WPF 窗口中使用 WinForms 时。
如果您使用的是 .NET 4 或更早版本,您在上面的代码中分配的 ZIndex 属性将被忽略 ;-),WPF 窗口中的 WinForm 元素将始终绘制在其他所有元素之上(您可以阅读更多关于这在这里:Layout Considerations for the WindowsFormsHost Element)。
这就是我们最终制作自己的播放器的原因,尝试和布局 WinForm 元素非常令人不安(我们需要滚动功能并且找不到让 WinFormEl. 部分消失的简单方法,而无需进行一些丑陋的调整无论如何在 VideoSourcePlayer 上)。
如果您使用 .NET 4.5,您可以更好地控制 ZIndex(和其他布局属性),您可以阅读 here (与上面的文章相同,但适用于 .NET 4.5)
注意:我记得读过一篇博客文章,其中说 isRedirected&CompositionMode 属性(您需要这些属性才能在 WPF 中正确布局您的 WinForms,如上面的链接所述)被排除在 4.5 版本之外,但是找不到关于此的任何官方声明(最安全的方法是尝试一下 :-))。
关于wpf - 在 wpf 中使用 forge videosouceplayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12616881/
我在 wpf 中使用 aforge:videosourceplayer,我遇到的麻烦是:为了在 wpf 中使用 aforge:VideoSourcePlayer,我们必须将它放在 WindowsFor
我在 wpf 中使用 aforge:videosourceplayer,我遇到的麻烦是:为了在 wpf 中使用 aforge:VideoSourcePlayer,我们必须将它放在 WindowsFor
我是一名优秀的程序员,十分优秀!