2016-01-05 65 views
3

我正在做一个媒体播放器作为使用.NET的WPF应用程序。从全屏出来时视频无法调整窗口大小

我只是做了全屏的东西,它运作良好。但是当我全屏出来时,如果我尝试调整窗口大小后,窗口中播放的视频不会伸展到窗口。

我检查,我把

 <MediaElement Name="MediaPlayer" Grid.Row="1" LoadedBehavior="Manual" Stretch="Fill" /> 

拉伸=“填充”放,所以我怎么错过了吗?

这是我的全屏功能:

private void Grid_MouseDown(object sender, MouseButtonEventArgs e) 
    { 

     if (e.ClickCount == 2) 
     { 
      if (!fullscreen) 
      { 
       MediaPlayer.Width = System.Windows.SystemParameters.PrimaryScreenWidth; 
       MediaPlayer.Height = System.Windows.SystemParameters.PrimaryScreenHeight; 
       this.WindowStyle = WindowStyle.None; 
       this.WindowState = WindowState.Maximized; 
       MediaPlayer.Stretch = System.Windows.Media.Stretch.Fill; 
      } 
      else 
      { 
       MediaPlayer.Width = 1280; 
       MediaPlayer.Height = 720; 
       this.WindowStyle = WindowStyle.SingleBorderWindow; 
       this.WindowState = WindowState.Normal; 
       MediaPlayer.Stretch = System.Windows.Media.Stretch.Fill; 
      } 
      fullscreen = !fullscreen; 
     } 
    } 

编辑:我得到了这个问题,只有当我在全屏输入一次。我可以调整大小,只有当我之前没有将窗口放在全屏幕时,视频才会适合窗口。

回答

1

目前,您在全屏方式下对MediaElement宽度/高度进行了硬编码,MediaElemet在您进行全屏显示时保留了硬编码大小。删除它,它会工作得很好:

private void Grid_MouseDown(object sender, MouseButtonEventArgs e) 
{ 
    if (e.ClickCount == 2) 
    { 
     if (!fullscreen) 
     { 
      this.WindowStyle = WindowStyle.None; 
      this.WindowState = WindowState.Maximized; 
     } 
     else 
     { 
      this.WindowStyle = WindowStyle.SingleBorderWindow; 
      this.WindowState = WindowState.Normal; 
     } 
     fullscreen = !fullscreen; 
    } 
} 
+0

谢谢,我完全忘了! – Difender

相关问题