Beispiel #1
0
            protected override void WndProc(ref Message m)
            {
                switch (m.Msg)
                {
                case WM_DRAWCLIPBOARD:
                    if (Clipboard.ContainsText())
                    {
                        var selectedText = Clipboard.GetText();
                        if (!String.IsNullOrEmpty(selectedText) && clipboardEvent != null)
                        {
                            clipboardEvent(this, new ClipboardEventArgs(selectedText));
                        }
                    }
                    Win32Helper.SendMessage(_clipboardViewerNext, m.Msg, m.WParam, m.LParam);
                    break;

                case WM_CLIPBOARD_CHANGECHAIN:
                    if (m.WParam == _clipboardViewerNext)
                    {
                        _clipboardViewerNext = m.LParam;
                    }
                    else
                    {
                        Win32Helper.SendMessage(_clipboardViewerNext, m.Msg, m.WParam, m.LParam);
                    }
                    break;

                default:
                    base.WndProc(ref m);
                    break;
                }
            }