MESCIUS CalendarGrid for Windows Forms 4.0J
和風月名
参考:和風月名とは?
旧暦では、和風月名(わふうげつめい)と呼ばれる月の和風の呼び名を使用していました。和風月名は旧暦の季節や行事に合わせたもので、現在の暦でも使用されることがありますが、現在の季節感とは1〜2ヶ月ほどのずれがあります。(国会図書館ギャラリー、暦の中のことばより)

CalendarGridには「睦月」や「師走」といった和風月名を直接表示する機能はありませんが、次のように簡単なコーディングでカレンダーのヘッダに和風月名を表示できます。

Imports GrapeCity.Win.CalendarGrid

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim month As Integer = GcCalendarGrid1.FirstDateInView.Month - 1
    UpdateJapaneseMonthName(month)
End Sub

Private Sub GcCalendarGrid1_FirstDateInViewChanged(sender As Object, e As EventArgs) Handles GcCalendarGrid1.FirstDateInViewChanged
    Dim gcCalendarGrid As GcCalendarGrid = DirectCast(sender, GcCalendarGrid)
    Dim month As Integer = gcCalendarGrid.FirstDateInView.Month - 1
    UpdateJapaneseMonthName(Month)
End Sub

Private Sub UpdateJapaneseMonthName(month As Integer)
    Dim japaneseMonthNames As String() = "睦月,如月,弥生,卯月,皐月,水無月,文月,葉月,長月,神無月,霜月,師走".Split(",")
    Dim japaneseMonthNamesReading As String() = "むつき,きさらぎ,やよい,うづき,さつき,みなづき/みなつき,ふみづき/ふづき,はづき/はつき,ながつき/ながづき,かんなづき,しもつき,しわす".Split(",")

    Dim titleCaption As CalendarTitleCaption = DirectCast(GcCalendarGrid1.TitleHeader.Children("CalendarTitleCaption1"), CalendarTitleCaption)
    titleCaption.Text = String.Format("{0} ({1})", japaneseMonthNames(month), japaneseMonthNamesReading(month))
End Sub
using GrapeCity.Win.CalendarGrid;

private void Form1_Load(object sender, EventArgs e)
{
    int month = gcCalendarGrid1.FirstDateInView.Month - 1;
    UpdateJapaneseMonthName(month);
    gcCalendarGrid1.FirstDateInViewChanged += gcCalendarGrid1_FirstDateInViewChanged;
}

private void gcCalendarGrid1_FirstDateInViewChanged(object sender, EventArgs e)
{
    var gcCalendarGrid = sender as GcCalendarGrid;

    int month = gcCalendarGrid.FirstDateInView.Month - 1;
    UpdateJapaneseMonthName(month);
}

private void UpdateJapaneseMonthName(int month)
{
    var japaneseMonthNames = "睦月,如月,弥生,卯月,皐月,水無月,文月,葉月,長月,神無月,霜月,師走".Split(',');
    var japaneseMonthNamesReading = "むつき,きさらぎ,やよい,うづき,さつき,みなづき/みなつき,ふみづき/ふづき,はづき/はつき,ながつき/ながづき,かんなづき,しもつき,しわす".Split(',');

    CalendarTitleCaption titleCaption = gcCalendarGrid1.TitleHeader.Children["calendarTitleCaption1"] as CalendarTitleCaption;
    titleCaption.Text = string.Format("{0} ({1})", japaneseMonthNames[month], japaneseMonthNamesReading[month]);
}
関連トピック

 

 


© MESCIUS inc. All rights reserved.