2

グリッドがXAMLあり、ボタンがいくつかあります。そして、ユーザーがグリッドを押すたびに通知を受け取りたいので、MouseEnterイベントを追加します。

<Grid x:Name="LayoutRoot" Background="#FF1F1F1F" MouseEnter="TapMouse">

しかし、私の問題は、ボタンの1つが押されるたびに、このメソッドも呼び出されることです。

それを無効にする方法はありますか?またはそれを実装する他の方法はありますか?

ありがとう

4

1 に答える 1

1

まず、各イベントブロックにブレークポイントを設定します。

どちらが最初に発砲しているのか、buttonまたはgrid

上部でブール値を宣言し、それを呼び出しますbuttonClicked = false;

もしそうなら、しかしイベントにbutton入れてくださいbuttonClicked = true

もしそうなら、私はあなたがイベントgridを使うことができるかどうか試してみるでしょうbuttonOver

グリッドイベントでは、すべてをifステートメントでラップしますif(!buttonClicked)

それはうまくいくはずです

buttonClicked = false:ボタンのフォーカス喪失イベントにも追加する必要があります

更新: 数年後にこの答えに戻って、私はそれがゲットーであることを認めます。更新したいのですが、自分の無知のタイムカプセルとして残しておく方がはるかに有益だと思います。

于 2013-02-12T18:53:26.547 に答える