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.v24.1.dll
NuGet Package: DevExpress.Web.Mvc5
Declaration
Property Value
Type | Description |
---|---|
EventHandler<CalendarDayCellInitializeEventArgs> | A EventHandler<TEventArgs><CalendarDayCellInitializeEventArgs,> delegate method allowing you to implement custom processing. |
Example
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.
@{
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