/// <summary> /// メッセージの処理を行います。 /// </summary> /// <param name="m">コントロールに渡されたメッセージを指定します。</param> /// <returns> /// 処理が実行された場合に true を返します。 /// それ以外の場合に false を返します。 /// </returns> protected sealed override void WndProc(ref Forms::Message m) { if (!this.OnWndProcess(ref m)) { base.WndProc(ref m); } }
private bool OnWndProcess(ref Forms::Message msg) { if (this.WndProcess == null) { return(false); } System.Delegate[] delegs = this.WndProcess.GetInvocationList(); for (int i = delegs.Length - 1; i >= 0; i--) { WndProcEventHandler proc = (WndProcEventHandler)delegs[i]; if (proc(this, ref msg)) { return(true); } } return(false); }
private bool OnPreProcess(ref Forms::Message msg) { System.Delegate ev = base.Events[EV_PRE_PROC]; if (ev == null) { return(false); } System.Delegate[] delegs = ev.GetInvocationList(); for (int i = delegs.Length - 1; i >= 0; i--) { WndProcEventHandler proc = (WndProcEventHandler)delegs[i]; if (proc(this, ref msg)) { return(true); } } return(false); }
/// <summary> /// 入力メッセージの先読みを行います。 /// </summary> /// <param name="msg">コントロールに渡されたメッセージを指定します。</param> /// <returns> /// 処理が実行された場合に true を返します。 /// それ以外の場合に false を返します。 /// </returns> public sealed override bool PreProcessMessage(ref Forms::Message msg) { return(this.OnPreProcess(ref msg) || base.PreProcessMessage(ref msg)); }