A newer version of this page is available. Switch to the current version.

CalendarSettings.DayCellInitialize Property

Enables you to specify whether the processed day is a weekend day, change the day text, or set the cell's hyper link and a target.

Namespace: DevExpress.Web.Mvc

Assembly: DevExpress.Web.Mvc5.v18.2.dll

Declaration

public EventHandler<CalendarDayCellInitializeEventArgs> DayCellInitialize { get; set; }
Public Property DayCellInitialize As EventHandler(Of CalendarDayCellInitializeEventArgs)

Property Value

Type Description
EventHandler<CalendarDayCellInitializeEventArgs>

A EventHandler<TEventArgs><CalendarDayCellInitializeEventArgs,> delegate method allowing you to implement custom processing.

Examples

The code sample below demonstrates how you can use the CalendarSettings.DayCellInitialize and CalendarSettings.DayCellPrepared properties to conditionally change the manner of rendering calendar days within a single month. The image below shows the result.

Calendar_Events

@{
    CalendarDemoHelper calendarHelper = new CalendarDemoHelper(Server.MapPath("~/App_Data/CalendarNotes.xml"));
}

@Html.DevExpress().Calendar(
    settings =>
    {
        settings.Name = "calendar";
        settings.CallbackRouteValues = new { Controller = "Editors", Action = "CalendarPartial" };
        settings.VisibleDate = new DateTime(2010, 10, 1);
        settings.ReadOnly = true;
        settings.Properties.EnableMonthNavigation = false;
        settings.Properties.EnableYearNavigation = false;

        settings.DayCellInitialize = (sender, e) => {
            if (calendarHelper.GetNoteNodes(e.Date).Count > 0) {
                e.IsWeekend = false;
                e.NavigateUrl = string.Format("javascript:ShowNotes('{0}')", calendarHelper.GetDateString(e.Date));
            } else {
                e.IsWeekend = true;
            }
        };

        settings.DayCellPrepared = (sender, e) => {
            if (calendarHelper.GetNoteNodes(e.Date).Count > 0) {
                e.TextControl.ForeColor = Color.Black;
                e.TextControl.Font.Bold = true;
            }
        };
    }).GetHtml()
See Also