DateTimePicker コントロールで奇妙な状況に直面しています。短い日付形式の DateTimePicker コントロールがあります。
このコントロールの値をテキスト ボックスに次のように設定しています。
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
textBox1.Text = dateTimePicker1.Value.ToShortDateString();
}
ここで、コントロールの最初のセクションである月を変更しようとすると、2 桁を入力すると ValueChanged イベントが発生し、そうでない場合は発生しません。
たとえば、6 か月目に入るときにキーボードで 6 を押した場合、ValueChanged イベントは発生しません。しかし、0 と 6 を押すと、そのイベントが発生します。11 または 12 を入力すると、ValueChanged イベントが発生します。同じことが日付セクションにも当てはまります。
つまり、日付または月のセクションに1桁を入力してもValueChangedイベントは発生しませんが、2桁を入力すると発生します。なぜこのように振る舞うのか誰か教えてもらえますか?DTPの期待される動作ですか?
1桁の数字を入力してもそのイベントを発生させるにはどうすればよいですか?