Exemplo n.º 1
0
 // Remove any active message filter
 private void RemoveMessageFilter()
 {
     if (_messageFilter != null)
     {
         Application.RemoveMessageFilter(_messageFilter);
         _messageFilter = null;
     }
 }
Exemplo n.º 2
0
 // Add filter to redirect to control with handle hWnd
 private void AddMessageFilter(IntPtr hWnd)
 {
     _messageFilter = new RedirectMessageFilter(WindowsMessages.WM_MOUSEWHEEL, hWnd);
     Application.AddMessageFilter(_messageFilter);
 }
Exemplo n.º 3
0
        private void richTextBoxMain_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.Control == true)
            {
                if (e.KeyCode == Keys.Z)//Undo
                {
                    richTextBoxMain.Undo();
                }
                else if (e.KeyCode == Keys.Y)//Redo
                {
                    richTextBoxMain.Redo();
                }
                else if (e.KeyCode == Keys.X)//Cut
                {
                    richTextBoxMain.Cut();
                }
                else if (e.KeyCode == Keys.C)//Copy
                {
                    richTextBoxMain.Copy();
                }
                else if (e.KeyCode == Keys.V)//Paste
                {
                    richTextBoxMain.Paste();
                }
                else if (e.KeyCode == Keys.D)//Clear
                {
                    richTextBoxMain.Clear();
                }
                else if (e.KeyCode == Keys.A)//SelectAll
                {
                    richTextBoxMain.SelectAll();
                }
                else
                {
                    return;
                }
                e.Handled = true;
            }
            else
            {
                // Redirect those keypresses to the right control
                switch (e.KeyCode)
                {
                case Keys.PageDown:
                    RedirectMessageFilter.PostMessage(listViewEditor.Handle, (int)WindowsMessages.WM_KEYDOWN, new IntPtr((int)VirtualKeys.VK_NEXT), IntPtr.Zero);
                    break;

                case Keys.PageUp:
                    RedirectMessageFilter.PostMessage(listViewEditor.Handle, (int)WindowsMessages.WM_KEYDOWN, new IntPtr((int)VirtualKeys.VK_PRIOR), IntPtr.Zero);
                    break;

//                    case Keys.Home:
//                        RedirectMessageFilter.PostMessage(listViewEditor.Handle, (int)WindowsMessages.WM_KEYDOWN, new IntPtr((int)VirtualKeys.VK_HOME), IntPtr.Zero);
//                        break;
//                    case Keys.End:
//                        RedirectMessageFilter.PostMessage(listViewEditor.Handle, (int)WindowsMessages.WM_KEYDOWN, new IntPtr((int)VirtualKeys.VK_END), IntPtr.Zero);
//                        break;
                default:
                    return;
                }
                e.Handled = true;
            }
        }