はじめに
Windows Forms の DateTimePicker には、通常の「カレンダーを開いて日付を選ぶ」形式とは別に、
上下ボタン(スピンボックス)で日時を変更するモードがあります。
それを有効にするのが ShowUpDown プロパティです。
💡 一言でまとめると
ShowUpDown = true にすると、カレンダーが消えて “スピン入力” だけの DateTimePicker になる。
ShowUpDown = true にすると、カレンダーが消えて “スピン入力” だけの DateTimePicker になる。
ShowUpDown プロパティとは?
| プロパティ名 | 型 | 説明 |
|---|---|---|
ShowUpDown |
bool |
上下ボタンで値を変更するスピン形式を表示(カレンダーが表示されなくなる) |
通常の DateTimePicker はクリックするとカレンダーが表示されますが、
ShowUpDown を true にするとカレンダーは使えず、
フィールドを選択した状態で上下キー or 上下ボタンで変更する方式になります。
基本的な使い方
スピンボックス形式をオンにする
dateTimePicker1.ShowUpDown = true;
これだけで、カレンダーが表示されなくなり、上下ボタン形式に切り替わります。
ShowUpDown は Format と組み合わせて使うことが多い
ShowUpDown は、特に時刻入力専用 UIとして非常に役立ちます。
その場合、Format と CustomFormat を組み合わせて入力しやすい形式にします。
時刻入力用(最も一般的な使い方)
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "HH:mm";
dateTimePicker1.ShowUpDown = true;
これで、次のような便利な「時刻スピン入力」が完成します👇
**[14:35]**(上下で時や分を増減できる UI)
✔ 時刻入力はカレンダー不要なので、この ShowUpDown モードが最適!
ShowUpDown を使うメリット
- カレンダーが不要な画面で UI がスッキリする
- 時刻入力が直感的でわかりやすい
- マウスを使わず、キーボードで効率よく操作できる
- カレンダー展開による画面崩れが起きない
- タッチ操作よりキーボード操作が中心の業務アプリに最適
ShowUpDown が向いているケース・向かないケース
向いているケース(おすすめ)
- 時刻入力だけを行いたい画面
- カレンダーを開く必要がない UI
- 画面崩れを避けたいフォーム
- テンキー・キーボード操作中心のシステム(POS、受注入力、予約管理など)
向いていないケース
- 日付をカレンダーで視覚的に選んでほしい場合
- 複雑な日付を一度に確認したい場合
- ユーザーの慣れが「カレンダー操作寄り」の場合
サンプル:日付と時刻を両方入力するフォーム
// 日付はカレンダー形式
dateTimePickerDate.Format = DateTimePickerFormat.Short;
// 時刻はスピンボックス形式
dateTimePickerTime.Format = DateTimePickerFormat.Custom;
dateTimePickerTime.CustomFormat = "HH:mm";
dateTimePickerTime.ShowUpDown = true;
このように「日付は普通のカレンダー」「時刻だけスピン形式」と分けて使うと、
業務画面で非常に扱いやすくなります。
よくあるハマりポイント
- ShowUpDown = true にしても見た目が変わらない?
→ Format がTimeまたはCustomのときが効果的。
日付表示の場合、変化がわかりにくいことがあります。 - カレンダーが出ない!
→ 正常動作です。ShowUpDown = true にするとカレンダーは出ません。 - 秒や AM/PM まで操作したい
→ CustomFormat にssやttを追加すればOK。 - 日付変更がわかりにくい
→ 時刻用として使い、日付は別の DateTimePicker で扱うのがベスト。
まとめ
ShowUpDownは DateTimePicker を “スピンボックス形式” にするプロパティ。- カレンダーは表示されない(上下操作専用になる)。
- 時刻入力UIとして最強。Format/CustomFormat と組み合わせて使う。
- 業務アプリで使われる頻度が高く、画面の操作性向上に役立つ。
「時刻をサクッと入力させたい」「カレンダーは邪魔」という画面では、
ぜひ ShowUpDown を使ってユーザーが気持ちよく操作できる UI を作ってみてくださいね。
Please follow and like us:

コメント