Edit this page

Formatting Items

The ElementRender event will be fired before every element is painted. This allows to easily change the styles of the elements at runtime, or format the items upon a condition. The following example shows how you can change the the border for a particular days.

Formating items in the ElementRender event.

private void RadCalendar1_ElementRender(object sender, RenderElementEventArgs e)
{
    if (e.Day.Date.DayOfWeek == DayOfWeek.Monday || e.Day.Date.DayOfWeek == DayOfWeek.Thursday)
    {
        e.Element.DrawBorder = true;
        e.Element.BorderColor = ColorTranslator.FromHtml("#51ab2e");
    }
}

Private Sub RadCalendar1_ElementRender(ByVal sender As Object, ByVal e As RenderElementEventArgs)
    If e.Day.Date.DayOfWeek = DayOfWeek.Monday OrElse e.Day.Date.DayOfWeek = DayOfWeek.Thursday Then
        e.Element.DrawBorder = True
        e.Element.BorderColor = ColorTranslator.FromHtml("#51ab2e ")
    End If
End Sub

Figure 1: RadCalendar with custom cells border.

calendar-formatting-items 001

Refresh the visual elements at runtime.

Since the event is called when the calendar is made visible, you may need to trigger it again at run-time. This can be done by calling RefreshVisuals method.

Trigger the ElementRender event at run-time.

radCalendar1.CalendarElement.RefreshVisuals();

radCalendar1.CalendarElement.RefreshVisuals()

See Also

Was this article helpful? Yes No
Thank you for your feedback!

Give article feedback

Tell us how we can improve this article

close
Dummy