ボタンとしてクリック可能なピクチャボックスを持つ userControl (.NET 1.1 Winforms) があります。
同時に多くのユーザーコントロールが表示されているので、マウスがユーザーコントロールの上にあるときにピクチャボックスを表示し、それ以外の場合は非表示にするといいと思いました。
そのために、UserControl の MouseEnter イベントと MouseLeave イベントを処理し、ピクチャ ボックスを表示または非表示にします。それはうまくいきます。
しかし、クリッカブル ピクチャ ボックスが表示されると、クリックできなくなります (ハンド カーソルがなくなり、クリック イベントが発生しません)。
いくつかのテストの後、MouseLeave ハンドラーのすべてのコンテンツにコメントを付けて、ピクチャ ボックスで何かを行うと、ピクチャ ボックスがクリック可能になることがわかりました。
正しいイベントを使用していませんか?
これを達成する別の方法はありますか?
これがコードです...
Private Sub NodoEstablo_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.pictAdd.Visible = False
End Sub
Private Sub NodoEstablo_MouseEnters(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.MouseEnter
Me.pictAdd.Visible = True
End Sub
問題のあるイベント ハンドラー:
Private Sub NodoEstablo_MouseLeaves(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.MouseLeave
Me.pictAdd.Visible = False
End Sub
更新: MouseLeave でピクチャボックスのサイズを変更すると (何かをするためだけに) 動作します。これまでのところ、MouseLeave で Visible と Location を変更すると、ピクチャ ボックスをクリックできなくなりました。:S