コントロールはTrackBar
、ページアップ/ページダウン/矢印アップ/矢印ダウンによって変更されたときとは反対の方向に変更されます。
これについては、こちらで詳しく説明しています: 上矢印/PgUp でトラックバーの値が減少するのはなぜですか?
この動作を修正/元に戻す方法はありますか?
コントロールはTrackBar
、ページアップ/ページダウン/矢印アップ/矢印ダウンによって変更されたときとは反対の方向に変更されます。
これについては、こちらで詳しく説明しています: 上矢印/PgUp でトラックバーの値が減少するのはなぜですか?
この動作を修正/元に戻す方法はありますか?
Idle_Mind の回答は適切で、実際に役に立ちましたが、欠点Scroll
が1つありValueChanged
ます。だから、ここに私のバージョンがあります:UpDownPageUpPageDown
public class ProperTrackBar : TrackBar
{
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
int oldValue = this.Value;
switch (keyData)
{
case Keys.Up:
this.Value = Math.Min(this.Value + this.SmallChange, this.Maximum);
break;
case Keys.Down:
this.Value = Math.Max(this.Value - this.SmallChange, this.Minimum);
break;
case Keys.PageUp:
this.Value = Math.Min(this.Value + this.LargeChange, this.Maximum);
break;
case Keys.PageDown:
this.Value = Math.Max(this.Value - this.LargeChange, this.Minimum);
break;
default:
return base.ProcessCmdKey(ref msg, keyData);
}
if (Value != oldValue)
{
OnScroll(EventArgs.Empty);
OnValueChanged(EventArgs.Empty);
}
return true;
}
}