Hello,
In some months as August 2012, 6 weeks are shown but the last row contains only days of September.
In this case, is it possible to suppress the last row?
Regards,
Erwan
In some months as August 2012, 6 weeks are shown but the last row contains only days of September.
In this case, is it possible to suppress the last row?
Regards,
Erwan
4 Answers, 1 is accepted
0
Kevin
Top achievements
Rank 2
answered on 22 Aug 2012, 01:10 PM
Hello Erwan,
You can set the ShowOtherMonthsDays="false" property.
I hope that helps.
You can set the ShowOtherMonthsDays="false" property.
I hope that helps.
0
Erwan
Top achievements
Rank 1
answered on 22 Aug 2012, 01:17 PM
Hello Kevin,
the result is not the one I expected....
The ShowOtherMonthsDays="false" property, just had a blank cell
the result is not the one I expected....
The ShowOtherMonthsDays="false" property, just had a blank cell
0
Accepted
Princy
Top achievements
Rank 2
answered on 23 Aug 2012, 05:51 AM
Hi Erwan,
Try the following code to achieve your scenario.
ASPX:
C#:
Hope this helps.
Thanks,
Princy.
Try the following code to achieve your scenario.
ASPX:
<telerik:RadCalendar ID="RadCalendar1" runat="server" ondayrender="RadCalendar1_DayRender" AutoPostBack="true" ></telerik:RadCalendar>C#:
protected void RadCalendar1_DayRender(object sender, Telerik.Web.UI.Calendar.DayRenderEventArgs e) { //' This method is used to hide the empty rows at the top/bottom that show up when the month starts on a Sunday or ends on a Saturday. RadCalendar Cal = (RadCalendar)sender; int currentMonth = Cal.FocusedDate.Month; DateTime FirstDay = new DateTime(Cal.FocusedDate.Year, currentMonth, 1); System.DateTime LastDay = FirstDay.AddDays(DateTime.DaysInMonth(FirstDay.Year, FirstDay.Month) - 1); if (e.Day.Date < FirstDay || e.Day.Date > LastDay) { Int32 CurrentDayOfWeek = (int)e.Day.Date.DayOfWeek; DateTime FirstDayOfWeek = e.Day.Date.AddDays(CurrentDayOfWeek * -1); DateTime LastDayOfWeek = FirstDayOfWeek.AddDays(6); if (FirstDayOfWeek.Month != currentMonth && LastDayOfWeek.Month != currentMonth) { ((TableRow)(e.Cell.Parent)).CssClass = "rchidden"; } }}Hope this helps.
Thanks,
Princy.
0
Erwan
Top achievements
Rank 1
answered on 23 Aug 2012, 09:04 AM
Hi Princy,
Your code worked well.
I just had to adapt it in the french way ;)
(The first day of the week is monday and the last is sunday.)
here is the code (in VB) :
Thank you very much.
Erwan
Your code worked well.
I just had to adapt it in the french way ;)
(The first day of the week is monday and the last is sunday.)
here is the code (in VB) :
Dim cal As RadCalendar = CType(sender, RadCalendar)Dim currentMonth As Integer = cal.FocusedDate.MonthDim firstDay As DateTime = New DateTime(cal.FocusedDate.Year, currentMonth, 1)Dim lastDay As System.DateTime = firstDay.AddDays(DateTime.DaysInMonth(firstDay.Year, firstDay.Month) - 1)If (e.Day.Date < firstDay Or e.Day.Date > lastDay) Then Dim CurrentDayOfWeek As Int32 = CInt(e.Day.Date.DayOfWeek) 'If Sunday, we set CurrentDayOfWeek to 7 instead of 0 If CurrentDayOfWeek = 0 Then CurrentDayOfWeek = 7 Dim FirstDayOfWeek As DateTime = e.Day.Date.AddDays((CurrentDayOfWeek * -1) + 1) Dim LastDayOfWeek As DateTime = FirstDayOfWeek.AddDays(6) If (Not FirstDayOfWeek.Month = currentMonth And Not LastDayOfWeek.Month = currentMonth) Then e.Cell.Text = "" CType(e.Cell.Parent, TableRow).CssClass = "rchidden" End IfEnd IfThank you very much.
Erwan