SWF 개체가 WPF 창 내부의 WindowsFormsHost 컨트롤에 포함되어 있습니다.Toolbar Overlay over WindowsFormsHost
swf 동영상 위에 툴바를 추가하고 싶습니다.
아래 코드의 스 니펫 문제는 새 컨트롤이 호스트 컨트롤에 추가 될 때 (또는 동영상이로드되었을 때 아직 어떤 것을 찾지 못했는지) 툴바가 실제로 보이지 않는다는 것입니다. swf의 Z- 인덱스가 어떤 이유에서든 최상위로 설정되어있는 것 같습니다. 여기
는 모습입니다 같은 :
XAML :
<Grid Name="Player">
<WindowsFormsHost Name="host" Panel.ZIndex="0" />
<Grid Name="toolbar" Panel.ZIndex="1" Height="50"
VerticalAlignment="Bottom">
[play, pause, seek columns go here]
</Grid>
</Grid>
C 번호 :
private void Window_Loaded(object sender, RoutedEventArgs e)
{
flash = new AxShockwaveFlashObjects.AxShockwaveFlash();
host.Child = flash;
flash.LoadMovie(0, [movie]); // Movie plays, but no toolbar :(
}
이 문제에 어떤 통찰력이 많이 주시면 감사하겠습니다.
업데이트 : 더 적절한 대답이 게시되지 않았기 때문에, 내가 아래에있는 내 자신의 솔루션을 배치 한. 나는 이것이 솔루션보다 더 많은 해킹이라는 것을 알고 있으므로 다른 제안을 할 수 있습니다.
참고 : '호스트'를 대상으로 '도구 모음'을 팝업 안에 중첩 시키려고했습니다. 이 메소드의 문제점은 윈도우가 이동/크기 변경되면 팝업이 따르지 않는다는 것입니다. – funseiki
일부 해킹 없이는 불가능한 것처럼 보입니다. Microsoft의 [post] (http://msdn.microsoft.com/en-us/library/ms744952.aspx) – funseiki
(위의 링크에서) "호스팅 된 Windows Forms 컨트롤은 Adorner 요소 위에 그려져 있습니다." 나는 Adorner를 사용한다고 말하려고했으나, 이것이 작동하지 않는 것처럼 보입니다. – Tom