Если вы используете API-интерфейс Framework, класс WebEventData
имеет свойство IsAllDay
. Вы можете использовать это, чтобы вызвать изменение отображения. Например, вы можете не захотеть отображать время начала и окончания вообще, если это событие All Day и просто показать дату.
Если вам нужны конкретные начальные и конечные времена для всех дневных событий, вы можете легко расширить объект Ektron WebEventData
с помощью методов расширения.
public static class WebEventExtensions
{
public static DateTime GetDisplayStartDate(this WebEventData webEvent)
{
if (!webEvent.IsAllDay)
return webEvent.EventStart;
return new DateTime(webEvent.EventStart.Year, webEvent.EventStart.Month, webEvent.EventStart.Day);
}
public static DateTime GetDisplayEndDate(this WebEventData webEvent)
{
if (!webEvent.IsAllDay)
return webEvent.EventEnd;
return new DateTime(webEvent.EventEnd.Year, webEvent.EventEnd.Month, webEvent.EventEnd.Day, 23, 59, 59);
}
}
Тогда эти методы появятся на объекте.
var eventManager = new WebEventManager();
WebEventData webEvent = eventManager.GetItem(730);
if (webEvent.IsAllDay)
{
// do all-day stuff...
}
var start = webEvent.GetDisplayStartDate();
var end = webEvent.GetDisplayEndDate();
Ektron версия? Я предполагаю, что вы создаете событие через интерфейс workarea? – egandalf