MonthCalendarクラス
日付設定のためにMonthCalendarクラスを使ってみたけど
なかなか性能がいい。
【注意事項】
- DoubleClickイベントは発生しない
- MouseDoubleClickイベントも試したけど×
- 値の取得はイベント発生時に引数から取得する
【イベントからの値の取得】
void monthCalendar1_DateSelected( Object^ /*sender*/,
System::Windows::Forms::DateRangeEventArgs^ e )
{
e->Start.ToShortDateString(); // 選択範囲の最初の日付
e->End.ToShortDateString(); // 選択範囲の最後の日付
}
※特定の日を指定したいのならDateTimePickerを使うほうが圧倒的に便利
DateTimePickerクラス
特定の日時、時間を指定するのならこれを使うと便利。
ただし、1つのコントロールでは日時と時間両方の指定は難しいっぽい気がする。
FormatプロパティをLongにすると「年月日」、Timeにすると{時分秒}になる。
Timeにした場合はShowUpDownプロパティをTrueにすることで、
時間の設定をしやすくすることが出来る。
またFormatプロパティをCustomにすることで、CustomFormatプロパティの値が有効になり、
適切な日時書式指定文字列を設定してやることで、ある程度の表示のカスタマイズをすることが可能。
これにより、「年月日時分秒」全てを表示することは可能だが、「年月日」と「時分秒」で分けたほうが
ユーザーは入力しやすいと思われる。(日時はカレンダーで、時間はUpDownカウンタで設定できるから)
値の取得はValueプロパティを使用する(DateTime型)
最終更新:2008年12月11日 18:35