質問: ### 前提・実現したいこと 動画閲覧ソフトをWPFで作成してるのですが、シークバーの部分をスクロールバーで 配置して再生箇所を表示する所まで出来ました。 しかし、スライダーをマウスで直接移動させ、それによって任意の箇所から再生 する事は出来たのですが、シークバー上の任意の箇所をクリックすると、そこから再生 するというのが出来ません。 WPFのスクロールバーで、任意の箇所をクリックしたら、そこにスライダーが一回で移動させる というのを実現するにはどうしたらいいのでしょうか? ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/248a640b7a8b01acae26349a08f4e51c.jpeg) ### 開発環境 VisualStudio 2017 Community C# WPF .Net 4.5.2
回答: 標準のScrollBarや~~Slider~~ではよくあるプレイヤーのシークバーと同じ動作を させることは出来ません。 6.動画プレイヤー作成その5(シークバーの設置) 例えばこのページのように、自分でマウス座標から位置を計算して 移動するようなプログラムにする必要があります。 この方の場合はRectangleを2個重ねて、シークバーを表現しています。 例えば、再生中の秒数/全体の秒数*シークバーの幅で計算すると、 現在位置が出せます。 追記: Sliderは嘘つきました。 Trackクリック時のThumbの移動方法を設定する つまり、ScrollBarをSliderにかえて、Slider.IsMoveToPointEnabledをTrueに 設定すると望みの動作になると思います。