2010-07-18 1 views
0

SmoothStreamingMediaElement를 전체 화면으로 열고 싶습니다. 미디어 요소 UI 유형을 취할 때 비디오 브러시를 사용할 수 없으므로 그리드에서 요소를 제거하려고했습니다. 그러나 그 경우에는 그리드로 그리드를 다시로드하고 동영상을 다시 재생합니다 은 제거하고 를 추가하지 않고 컨트롤을 이동 어쨌든 또는 당신은 proberly 지금 쯤은 해결책을 발견SmoothStreamingMediaElement 전체 화면 열기

videoWindow.Children.Remove(mediaElement); 
FullScreenGrid.Visibility = Visibility.Visible; 
FullScreenGrid.Children.Add(mediaElement); 

답변

0

내가 코드를 사용하고있어 전체 화면 에서 열 수있는 다른 옵션이 있습니다,하지만 어쩌면 누군가가 다른 것 이것을 찾으십시오.

난 당신과 같은 문제를했고,이 간단한 클래스를 사용하여 결국 :

public class ExtendedSmoothStreamingElement : SmoothStreamingMediaElement 
    { 
     #region MediaElement (DependencyProperty) 

     public static readonly DependencyProperty MediaElementProperty = DependencyProperty.Register("MediaElement", typeof (MediaElement), typeof (ExtendedSmoothStreamingElement), null); 

     public MediaElement MediaElement 
     { 
      get { return (MediaElement) GetValue(MediaElementProperty); } 
      set { SetValue(MediaElementProperty, value); } 
     } 

     #endregion 

     public override void OnApplyTemplate() 
     { 
      base.OnApplyTemplate(); 

      MediaElement = (MediaElement)GetTemplateChild("MediaElement"); 
     } 
    } 

그것은 SmoothStreamingMediaElement에 의해 사용되는 내부 MediaElement 제공합니다.

또 다른 것은 보통 MediaElement처럼 할 수있는 것처럼 SmoothStreamingMediaElement.Visiblity 속성을 접히고 재생하도록 설정할 수 없다는 것입니다.