The Year property returns the year of the current instance in the Gregorian calendar. It does not return the year using the default calendar of the current culture. To retrieve the year using a particular calendar, you can call that calendar's GetYear method. The following example, which assumes that the target computer's current culture is th-TH, illustrates this.
Imports System.Globalization
Module Example
Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
' Initialize date variable and display year
Dim date1 As Date = #1/1/2008 6:32:00 AM#
outputBlock.Text &= date1.Year & vbCrLf ' Displays 2008
' display year using current culture's calendar
Dim thaiCalendar As Calendar = CultureInfo.CurrentCulture.Calendar
outputBlock.Text &= thaiCalendar.GetYear(date1) & vbCrLf ' Displays 2551
End Sub
End Module
using System;
using System.Globalization;
using System.Threading;
public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
// Initialize date variable and display year
DateTime date1 = new DateTime(2008, 1, 1, 6, 32, 0);
outputBlock.Text += date1.Year + "\n"; // Displays 2008
outputBlock.Text += date1.Year + "\n"; // Displays 2008
// display year using current culture's calendar
Calendar thaiCalendar = CultureInfo.CurrentCulture.Calendar;
outputBlock.Text += thaiCalendar.GetYear(date1) + "\n"; // Displays 2551
}
}