一、问题描述:
客户笔记本电脑连接了一个显示器,将其设置成了“扩展这些显示器”,将winForm窗体从主显示器拖到扩展显示器上,点击放大和还原的时候,界面的大小和位置不正确
解决方案如下:
1,this.FormBorderStyle != System.Windows.Forms.FormBorderStyle.None的情况,将窗体最大化和还原操作:
这种情况下,winForm窗体时在当前显示器的工作区域内,是不会覆盖任务栏,同时位置和大小都是理性状态的。也就不说了
2,this.FormBorderStyle != System.Windows.Forms.FormBorderStyle.None的情况,利用From的属性WindowsState属性控制窗体最大化和还原,将窗体最大化和还原操作:
界面如下:
不管是在主显示器上最大化还是在扩展显示器上最大化,都会遮挡任务栏(连腾讯qq都截不了屏,就不附图了)
除了遮挡了任务栏外,其他效果都还是可以的,但是客户要求不可以占用任务栏
3,重新指定界面属性获取和设置窗体最大化后的大小MaximizedBounds为当前显示器的工作区域的大小
这样的话,在主显示器上的显示大小都是正确的,但是移动到扩展显示器上后,就会出现问题了,这时候的location和size还不是我想要的效果。下面的图就是我在扩展显示器上的最大化效果