Week
Sunday: 12/30/2018 - Saturday: 01/05/2019 in SQL Server I get week #1
RadCalendar shows it as week 53.
I have this in my page load event,
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim C As System.Globalization.CultureInfo = New System.Globalization.CultureInfo(Me.rcCalendar.CultureInfo.ToString())
C.DateTimeFormat.CalendarWeekRule = System.Globalization.CalendarWeekRule.FirstFourDayWeek
C.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Sunday
Me.rcCalendar.CultureInfo = C
SQL server is using defaults, Set DateFirst 7 --Sunday
I've also tried this, nothing seems to make any change.
Protected Overrides Sub InitializeCulture()
Dim c As System.Globalization.CultureInfo = New System.Globalization.CultureInfo(System.Threading.Thread.CurrentThread.CurrentCulture.ToString())
c.DateTimeFormat.CalendarWeekRule = System.Globalization.CalendarWeekRule.FirstFourDayWeek
System.Threading.Thread.CurrentThread.CurrentCulture = c
MyBase.InitializeCulture()
End Sub
I've also tried this Routine, which returns week #1 for date : 01/01/2019
Private Function GetIso8601WeekOfYear(ByVal pDateTime As DateTime) As Integer
Dim day As DayOfWeek = Globalization.CultureInfo.InvariantCulture.Calendar.GetDayOfWeek(pDateTime)
If day >= DayOfWeek.Monday AndAlso day <= DayOfWeek.Wednesday Then
pDateTime = pDateTime.AddDays(3)
End If
Return Globalization.CultureInfo.InvariantCulture.Calendar.GetWeekOfYear(pDateTime, Globalization.CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Sunday)
End Function
ASPX
<telerik:RadCalendar runat="server" ID="rcCalendar" EnableMultiSelect="False" Width="100%" Height="240px" FirstDayOfWeek="Sunday"
DayNameFormat="Short" AutoPostBack="True" ShowRowHeaders="true" UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False"
EnableWeekends="True" FastNavigationNextText="&lt;&lt;" SelectedDate="" RangeSelectionMode="None">
<ClientEvents OnDateClick="DateClick" />
</telerik:RadCalendar>