WPF实现窗口全屏

 时间:2024-11-03 05:42:09

经常会有些程序需要全屏窗口显示,比如视频播放软件,这里介绍一个自制视频软件实现全屏播放的例子。

工具/原料

软件vs2013

了解C#语法、了解WPF

一个可播放的视频文件

方法/步骤

1、新建或打开一个WPF自制视频VS解决方案,方法可以参考下面的“WPF利用OpenFileDialog打开文件”经验。如果只是单纯完成WPF实现窗口全屏,可以略过当前步骤,参考后面的步骤。

2、选择或增加一个全屏右键菜单项,在属性窗口中选择类似于闪电标记的【事件】属性,然后再点击第二项【Click】右侧文本框,VS系统将会为当前右键菜单项自动添加Click事件。

WPF实现窗口全屏

3、在点击添加Click事件后,系统将自动跳转到MainWindow.xaml.cs代码编辑页面,并自动添加如下图红色框中的代码。代码如下:privatevoidM全屏_Click(objectsender,RoutedEventArgse){}

WPF实现窗口全屏

4、为了实现全屏播放,我们酋篚靶高需要改变窗口样式,并实现全屏。同时实现全屏后,同时得具有退出全屏操作。代码如下:privatevoid罄休卦咦M全屏_Click(objectsender,RoutedEventArgse){if(M全屏.Headerasstring=="全屏"){//改变右键菜单显示文字M全屏.Header="退出全屏";//记录当前窗口状态this.SaveWindowState=this.WindowState;this.SaveWindowStyle=this.WindowStyle;this.SaveResizeMode=this.ResizeMode;this.SaveTopmost=this.Topmost;this.SaveLeft=this.Left;this.SaveTop=this.Top;this.SaveWidth=this.Width;this.SaveHeight=this.Height;//设置全屏this.WindowState=System.Windows.WindowState.Normal;this.WindowStyle=System.Windows.WindowStyle.None;this.ResizeMode=System.Windows.ResizeMode.NoResize;this.Topmost=true;this.Left=0.0;this.Top=0.0;this.Width=System.Windows.SystemParameters.PrimaryScreenWidth;this.Height=System.Windows.SystemParameters.PrimaryScreenHeight;}else{M全屏.Header="全屏";this.WindowState=this.SaveWindowState;this.WindowStyle=this.SaveWindowStyle;this.ResizeMode=this.SaveResizeMode;this.Topmost=this.SaveTopmost;this.Left=this.SaveLeft;this.Top=this.SaveTop;this.Width=this.SaveWidth;this.Height=this.SaveHeight;}}将代码替换掉第三步增加的代码,可能会发现出现16个错误,如下图:

WPF实现窗口全屏

5、点击在代码错误提示处擢爻充种的下拉菜单,将出现增加属性和字段两个选项,这里我们都选择字段。所有出现的错误都按此操作芟坳葩津,或者在MainWindow.xaml.cs直接复制粘贴下面代码:privateWindowStateSaveWindowState;privateWindowStyleSaveWindowStyle;privateResizeModeSaveResizeMode;privateboolSaveTopmost;privatedoubleSaveLeft;privatedoubleSaveTop;privatedoubleSaveWidth;privatedoubleSaveHeight;

WPF实现窗口全屏

6、编译成功后,按F5进行测试。在软件窗口中点击右键菜单,点击【选择视频文件】,选择准备好的可播放视频文件,视频将开始播放。播放后,再在软件窗口中点击右键菜单,点击【全屏】,视频将全屏播放。全屏后,我们可以再在软件窗口中点击右键菜单,点击【退出全屏】,即实现视频全屏窗口和小窗口切换操作。

WPF实现窗口全屏

国瑞继保PCS-985A发电机变压器组保护装置技术说明书:[11] 如何使用电子印章生成器制作电子印章 尤蜜怎么充值尤果币? elementUI如何用input制作密码框 js实现For循环单击按钮将代码块循环执行
热门搜索
beyond图片 搅拌车图片 小喇叭图片 爱字图片 灰姑娘图片