2013-08-02 18 views
9

私はWPFウィンドウでスライダーを使用しています。スライダーのトラックのどこかをクリックすると、その正確な位置に移動することができます。現在、私がどこかをクリックすると、親指はその位置に向かいますが、正確にはその位置には向いていません。私は何をしたいのですか?C#WPF:正確な位置にスライダー

編集:私が望むものをよりよく説明する例:親指が10で、マウスを100近くまで下げると、100にジャンプしたい(他の値を通さずに)。

答えて

23

あなたはTrueIsMoveToPointEnabledを設定する必要があります:http://msdn.microsoft.com/en-us/library/system.windows.controls.slider.ismovetopointenabled.aspx

Slider.IsMoveToPointEnabledは、スライダーのサムにマウスポインタ中に発生するマウスクリックの場所にすぐに移動できるかどうかを示す値を取得または設定しますスライダトラックで一時停止します。

+0

ええ、そうです。私はこの解決策を試みたと確信していましたが、明らかに間違っていました。ありがとうございました ! – TheQuestioner

2

あなたは、スライダサムマウス入力イベントを処理し、必要な動作を定義する必要があります。

var thumb = (slider1.Template.FindName("PART_Track", slider) as Track).Thumb; 
thumb.MouseEnter += new MouseEventHandler(ThumbMouseEnter); 

次に、ThumbMouseEnterイベントヘンドラーで親指の位置を設定します。これにより、必要な動作を定義することができます。

非常によく似た質問があります。social.msdn.microsoft.com

関連する問題