DateTimePickerで和暦を表示させる

下記のえムナウさんのblogからです。

DateTimePickerで和暦を表示させる



えムナウさんはC#で書かれていたので、ここではVBでやってみたいと思います。まぁDimと Asを追加して、thisをMeに変え、;を削除しただけですけどね。


Visual Basic

    Private Sub DateTimePicker1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DateTimePicker1.ValueChanged
        Dim calendar As New System.Globalization.JapaneseCalendar()
        Dim culture As New System.Globalization.CultureInfo("ja-JP")
        culture.DateTimeFormat.Calendar = calendar
        Me.DateTimePicker1.CustomFormat = DateTimePicker1.Value.ToString("gg yy", culture) + "年MM月dd日 dddd tt hh:mm:ss"
    End Sub
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DateTimePicker1_ValueChanged(DateTimePicker1, New EventArgs())
    End Sub


このコードを書いたら、CustomFormatを使用しているのでFormatプロパティをCustomに設定します。
実行してみますと、年はカレンダーから選択する必要があるという問題はありますが、きちんと平成表記で表示されます。





ちなみにここからは宣伝になってしまいますが(これが書きたかっただけ?^_^;)、InputManでは書式の設定から簡単に平成表記を設定することができます。





表示時と入力時の書式を分けて設定することができるので、表示時にはこのような元年表示することもできます。