示例#1
0
 private void TopRightClick(object sender, MouseEventArgs e)
 {
     if (e.Button == MouseButtons.Right)
     {
         TopLevelWindow.ReleaseCapture();
         _skinWindow.Parent.Activate();
         _skinWindow.Parent.PostMessage(WindowMessages.Getsysmenu, IntPtr.Zero, MakeDWord(Cursor.Position.X, Cursor.Position.Y));
     }
 }
示例#2
0
 private void ForceParentCommand(SystemCommands HitTest)
 {
     TopLevelWindow.ReleaseCapture();
     _skinWindow.Parent.Activate();
     //Parent.SendMessageTimeOut(WindowMessages.SysCommand, _
     //                          New IntPtr(HitTest), _
     //                          IntPtr.Zero, _
     //                          SendMessageTimeOutFlags.Normal Or SendMessageTimeOutFlags.AbortIfHang, _
     //                          0, IntPtr.Zero)
     _skinWindow.Parent.PostMessage(WindowMessages.SysCommand, new IntPtr((int)HitTest), IntPtr.Zero);
     //using SendMessageTimeOut make hang when trying to close a window
     // and hangs the window on vista when moving so much because it causes the thread to hold until it return
 }
示例#3
0
 private void IconClick(object sender, MouseEventArgs e)
 {
     try
     {
         Debug.WriteLine("Icon Clicked");
         TopLevelWindow.ReleaseCapture();
         _skinWindow.Parent.Activate();
         if (_skinWindow.IconControl1.VerticalAlignment == VerticalAlignment.left)
         {
             _skinWindow.Parent.PostMessage(WindowMessages.Getsysmenu, IntPtr.Zero, MakeDWord(_skinWindow.LeftBorder1.Left + _skinWindow.LeftBorder1.Width, _skinWindow.TopBorder1.Top + _skinWindow.TopBorder1.Height));
         }
         else
         {
             _skinWindow.Parent.PostMessage(WindowMessages.Getsysmenu, IntPtr.Zero, MakeDWord(_skinWindow.TopBorder1.Left + (_skinWindow.TopBorder1.Width - _skinWindow.RightBorder1.Width), _skinWindow.TopBorder1.Top + _skinWindow.TopBorder1.Height));
         }
     }
     catch (Exception)
     {
     }
 }
示例#4
0
 public static void ForceParentCommand(TopLevelWindow window, SystemCommands HitTest)
 {
     TopLevelWindow.ReleaseCapture();
     window.Activate();
     window.PostMessage(WindowMessages.SysCommand, new IntPtr((int)HitTest), IntPtr.Zero);
 }