我的Window
设置为我的显示器的高度和宽度:
var r = System.Drawing.Rectangle.Union( System.Windows.Forms.Screen.AllScreens[0].Bounds, System.Windows.Forms.Screen.AllScreens[1].Bounds );
Height = r.Height;
Width = r.Width;
这一切都很好,直到我锁定我的电脑(WIN + L),当我回来时窗口已经调整为仅在一台显示器上。
我想要做的是防止尺寸减小,因为我在第二台显示器上的画布上画画,当调整大小时,这一切都会丢失..
有关如何防止这种情况的任何想法?
干杯!
答案 0 :(得分:1)
您可以在.NET中使用解锁/锁定事件。在锁定事件期间存储窗口高度,宽度和位置,并在解锁事件中恢复它。确保添加“使用Microsoft.Win32 ”
SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch);
private void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
{
if (e.Reason == SessionSwitchReason.SessionUnlock)
{
//Put resize logic here
}
else if (e.Reason == SessionSwitchReason.SessionLock)
{
//Put size store logic here
}
}