ユーザーがスライダーをドラッグして TrackBar の値を変更できないようにする (一時的に) 方法はありますか? 私が見つけた唯一の方法は、Enabled
プロパティを false に設定することですが、トラックバーもグレー表示されます。
編集: どのようにできるかよりも、なぜすべきでないかについての回答が増えてきたので、なぜそうしたいのかを説明することにしました。
ユーザーが一部のアプリケーション プロパティの値を調整できるようにするためではなく、一部のアクションの進行状況を表示および制御するために使用しています。たとえば、あなたのお気に入りのメディアプレーヤーを想像してみてください - おそらく、現在再生中の映画のどの部分を表示するだけでなく、それを制御することもできる何らかのコントロール (トラックバーと呼びますが、英語は私の母国語ではないので間違っているかもしれません) が含まれています-時間を前後に移動して、別の部分を見てください。
私はまさにこの方法でトラックバーを使用しています - より良い他のコンポーネントを知りません (プログレスバーでは「位置」を変更することはできません)。私がしたい唯一のことは、ユーザーが「映画が一時停止されていない限りトラックバーを使用する」ことを許可しないことです。
この正確な理由から、私は Delphi 6 でトラックバー コンポーネントを何度も使用しましたが、無効にしてもグレーアウトせず、私の意見では問題なく動作しました。そのため、C# で同じ効果を達成できるかどうかをここで尋ねました。