|
分類:[C#]
VS C# 2013 で複数のフォームを持つアプリケーションがあり、 あるフォームが他のフォームの上に重なった際にイベントを起こそうと思っています。 感覚としてはドラッグ&ドロップのような動作を求めています。
List<Form> として小フォームのリストがまとめられていて、 MouseMoveで移動しているフォームが他の小フォームに対して childForm.Bounds.contains(this.Bounds) のとき関数を実行するつもりでいましたが、この方法では ドロップ先のフォームの下にもう一枚別のフォームが重なっていた時に区別ができません。 重なっている子フォームのうち最前面のフォームに対してのみイベントを 発生させたいのですがなにか方法はあるでしょうか?
ちなみに全てのフォームはTopMost=trueになっていてクリックすると最前面に来ます。 よろしくお願いします。
|