• 締切済み

DateTimePickerを西暦表示にする方法

地域と言語オプションで和暦設定を行っているPCで DateTimePickerコントロールを西暦表示にしたいのですが どの様にすればよいのでしょうか? 現在、プロパティを下記のように設定しています。 しかし、西暦で"2008/08/26"と表示したいのですが 和暦で"20/08/26"と表示されます。 Formatプロパティ:Custom CustomFormatプロパティ:"yyyy/MM/dd" 皆様のお力をお貸し下さい。 環境は WindowsXP sp2 VisualStudio2008 C# です。

みんなの回答

  • SHIMAPEE
  • ベストアンサー率75% (154/203)
回答No.1

C#を勉強中の者です。既に検索されているかもしれませんが、DateTimePickerの和暦、西暦は地域と言語オプションで決まってしまい、プログラム側で制御することはできないようです。 なお、「DateTimePicker 和暦」などで検索したところ、年の部分を文字列で表示してしまう方法を書かれている方がおられます。 DateTimePickerで和暦を表示させる http://blogs.wankuma.com/mnow/archive/2006/05/21/26510.aspx ただし年の部分は文字列ですので選択してUpDownはできず、変更するにはカレンダーを使わなければなりません。しかもカレンダーの表示は和暦かもしれません。この方法でよければ下記のコードで常に西暦を表示できます。Windows XP SP3 + C#2005 Expressで試しました。 (でも、地域と言語オプションで和暦が選択されたのなら、和暦を表示した方が統一感があってよいようにも思います。プログラム内の文字列での比較等は西暦で統一して。) -------- dateTimePicker1のFormatプロパティをCustomにしておきます。 private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { dateTimePicker1.CustomFormat = dateTimePicker1.Value.Year.ToString() + "/MM/dd"; } private void Form1_Load(object sender, EventArgs e) { dateTimePicker1_ValueChanged(dateTimePicker1, new EventArgs()); }

関連するQ&A