启动WinForm应用程序Aerosnaped Right Aligned

时间:2012-06-28 17:37:05

标签: c# winforms aero-snap

这应该是一个简单的问题,但是search-foo让我失望了。我的目标是检测我是在Aero(Vista或Windows 7)下运行并默认使用我的应用程序Aerosnap。 (事实证明,我写的公司应用程序是由几乎每个人都正确运行的,他们的Outlook会向左侧拍摄。)

应用程序是WinForms,我现在正在做

Width = Screen.PrimaryScreen.WorkingArea.Size.Width / 2;
Height = Screen.PrimaryScreen.WorkingArea.Size.Height;
Top = Screen.PrimaryScreen.WorkingArea.Top;
Left = Screen.PrimaryScreen.WorkingArea.Left + 
       Screen.PrimaryScreen.WorkingArea.Size.Width / 2;

在我的表单的加载事件中。这很好用,除非他们使用WindowKey + Arrow,它就好像它只是一个正常位置的形式。这意味着WindowKey + Right在第一次按下时不执行任何操作,并且WindowKey + Left向左按下。这不是一个主要问题,但我更愿意,如果我可以指定一个窗口大小然后将应用程序捕捉到右侧,那么这些键的行为与其他任何应用程序一样。

我不确定这是否可行,以下是我找到的事情:

这些似乎表明没有可用的特殊AeroSnap消息。谁知道呢?

1 个答案:

答案 0 :(得分:0)

不确定为什么检查版本不会让你大部分时间。 如何使用Visual C#确定Windows版本 http://support.microsoft.com/kb/304283

这可能会让你完成剩下的工作。 http://social.msdn.microsoft.com/Forums/en/vbgeneral/thread/1a82ec8d-afc3-4eba-8189-6ee105aa6249