作成日: 2017/03/14 最終更新日: 2017/03/14
文書種別
制限事項
詳細
Windowsの「カレンダーの種類」を「西暦(日本語)」 から 「和暦」に変更し、RibbonDatePickerやRibbonTimePickerを貼り付けたフォームを開くと、下記の例外エラーが発生します。
(エラーの内容)
--------------------------
指定された時刻はこのカレンダーではサポートされていません。値は09/08/1868 00:00:00 (グレゴリオ暦) から 12/31/9999 23:59:59 (グレゴリオ暦) までの間でなければなりません。
--------------------------
C1RibbonのRibbonDatePickerやRibbonTimePickerでは、内部処理上、西暦で日付値が処理される前提となっており、日付を標準のDateTime値として処理しています。JapaneseCalendarなど特定のカレンダーを使用することは考慮していないため、和暦を使用するよう設定した環境で、例えば「29/01/01」という日付書式文字列が渡されるような場合、これが平成29年ではなく1929年として処理されることで、例外エラーが発生します。
これを回避するには、アプリケーションのカレントスレッドで強制的に西暦の日付書式を使用するよう、カルチャ情報を設定します。
(Program.csへの記載例)
◎サンプルコード(VB)
(エラーの内容)
--------------------------
指定された時刻はこのカレンダーではサポートされていません。値は09/08/1868 00:00:00 (グレゴリオ暦) から 12/31/9999 23:59:59 (グレゴリオ暦) までの間でなければなりません。
--------------------------
C1RibbonのRibbonDatePickerやRibbonTimePickerでは、内部処理上、西暦で日付値が処理される前提となっており、日付を標準のDateTime値として処理しています。JapaneseCalendarなど特定のカレンダーを使用することは考慮していないため、和暦を使用するよう設定した環境で、例えば「29/01/01」という日付書式文字列が渡されるような場合、これが平成29年ではなく1929年として処理されることで、例外エラーが発生します。
これを回避するには、アプリケーションのカレントスレッドで強制的に西暦の日付書式を使用するよう、カルチャ情報を設定します。
(Program.csへの記載例)
◎サンプルコード(VB)
System.Threading.Thread.CurrentThread.CurrentCulture = New CultureInfo("ja-JP", False)
◎サンプルコード(C#)System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("ja-JP", false);
旧文書番号
82060