土曜日, 10月 18, 2008
[VB2005]MonthCalendarのDateChangedイベントが周期的に発生する
▼質問
MonthCalendarでDateChangedイベントが周期的に発生するんだ。
これはどうしてなんだ?
▼回答
参考サイトより
カレンダーの本日を更新するために約2分間隔でマシン日付をチェックするために発生している
イベントに同期しているらしい。これは、MonthCalendarコントロールのバグらしい。
ユーザが明示的に操作した時にだけイベントを発生させたいなら、DateChangedではなく、DateSelectedイベントを使えばよいようだ。
確かに、DateSelectedイベントを使えば問題ないことがわかった。
DateChangedイベントとDateSelectedイベントの違いは何なんだ?と思って説明を並べてみた。
MonthCalendar.DateChanged イベント
MonthCalendar で選択された日付が変更された場合に発生します。
MonthCalendar.DateSelected イベント
ユーザーがマウスを使用して明示的に日付を選択した場合に発生します。
これを読む限り、通常操作の場合はDateSelected イベントを使えばよいことになるな!
DateChanged イベントを使うのはどんな時なのかと考えてみると、選択された特定の日に
何かをしたい時のイベント処理が考えられるのかな?!
よく考えると、単純に選択(操作)と変更(動作)の違いか!!
■参考サイト
MonthCalendar で予期せぬ DateChanged イベントが発生する
http://blogs.wankuma.com/jeanne/archive/2005/09/02/18244.aspx
DataGridViewの年月日項目に今日の日付が自動設定される?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=41347&forum=7
MonthCalendarでDateChangedイベントが周期的に発生するんだ。
これはどうしてなんだ?
▼回答
参考サイトより
カレンダーの本日を更新するために約2分間隔でマシン日付をチェックするために発生している
イベントに同期しているらしい。これは、MonthCalendarコントロールのバグらしい。
ユーザが明示的に操作した時にだけイベントを発生させたいなら、DateChangedではなく、DateSelectedイベントを使えばよいようだ。
確かに、DateSelectedイベントを使えば問題ないことがわかった。
DateChangedイベントとDateSelectedイベントの違いは何なんだ?と思って説明を並べてみた。
MonthCalendar.DateChanged イベント
MonthCalendar で選択された日付が変更された場合に発生します。
MonthCalendar.DateSelected イベント
ユーザーがマウスを使用して明示的に日付を選択した場合に発生します。
これを読む限り、通常操作の場合はDateSelected イベントを使えばよいことになるな!
DateChanged イベントを使うのはどんな時なのかと考えてみると、選択された特定の日に
何かをしたい時のイベント処理が考えられるのかな?!
よく考えると、単純に選択(操作)と変更(動作)の違いか!!
■参考サイト
MonthCalendar で予期せぬ DateChanged イベントが発生する
http://blogs.wankuma.com/jeanne/archive/2005/09/02/18244.aspx
DataGridViewの年月日項目に今日の日付が自動設定される?
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=41347&forum=7