2011-02-07 11 views
1

1つのコントロールに設定されたマウスカーソルが、すべてのクリップコントロールのマウスカーソルをオーバーライドする方法はありますか?Silverlight:マウスカーソルのオーバーライド

現在、砂時計にカーソルを合わせるとほとんどの場合動作しますが、元のカーソルを保持しているコントロールが1つあります。

+0

コントロールの既定のスタイルテンプレートを設定する以外の方法をお探しですか? –

+0

UIがブロックされているときに、私のユースケースが表示され、待機カーソルが非表示になっています。 –

答えて

1

子供が親によって定義されたカーソルを尊重するのではなく、それゆえに命であるということは奇妙です。

myButton.Cursor = Cursors.Hand; 
1

子供たちは両親のマウスカーソルの設定を継承しますは、彼らが自分のマウスカーソルの設定を持っていない限り:あなたがプログラムでカーソルを設定してみてください可能性があり、この効果のみ1つのボタン以来の最悪のケース。

これを回避するには、ビジーカーソルを表示させたい領域全体に透明なコントロールを配置し、その上にカーソルを設定します。

+0

うーん、私はそれが好きです。透過コントロールがヒットテストをfalseに設定した場合でも動作しますか? –

+1

@Jonathan、オーバーレイに対して 'IsHitTestVisible'をfalseに設定すると、' Cursor'プロパティは無視されます。したがって、カーソルを表示している間にユーザーの入力をブロックするのがうまくいけば、この方法が有効になり、カーソルが表示されるかどうかを制御するためにヒットテスト可能性を設定/設定解除できます。 –

関連する問題