iCalendarImporter.CalendarStructureCreated Event

Fires when the calendar object conforming to the iCalendar specification is created.

Namespace: DevExpress.XtraScheduler.iCalendar

Assembly: DevExpress.XtraScheduler.v19.2.Core.dll

Declaration

public event iCalendarStructureCreatedEventHandler CalendarStructureCreated
Public Event CalendarStructureCreated As iCalendarStructureCreatedEventHandler

Event Data

The CalendarStructureCreated event handler receives an argument of the iCalendarStructureCreatedEventArgs type. The following properties provide information specific to this event.

Property Description
Calendars Provides access to the calendar structures conforming to the iCalendar specification.

Remarks

Handle the CalendarStructureCreated event to obtain information on the iCalendar object, accessing its properties and attributes.

Examples

The following example illustrates how the calendar structure constructed by the iCalendarImporter can be used to determine the time when the original appointment was created and the application used for .ics file generation.

The iCalendarImporter.CalendarStructureCreated event is handled and DevExpress.XtraScheduler.iCalendar.Components.iCalendarComponent object properties are inspected. The ProductIdentifier property specifies the identifier for the product that created the iCalendar object, the DevExpress.XtraScheduler.iCalendar.Components.VEvent.Created property specifies the date and time that the calendar information was created by the calendar user agent in the calendar store.

The information message is appended to the appointment's subject, as illustrated in the following picture:

CalendarStructureCreated

using DevExpress.XtraScheduler;
using DevExpress.XtraScheduler.iCalendar;
using DevExpress.XtraScheduler.iCalendar.Components;
// ...
void importer_CalendarStructureCreated(object sender, iCalendarStructureCreatedEventArgs e) {
    iCalendarComponent cal = e.Calendars[0];
    string productId = cal.ProductIdentifier.Value;
    for (int i = 0; i < cal.Events.Count; i++)
    {
        VEvent ev = cal.Events[i];
        DateTime created = ev.Created.Value;
        ev.Description.Value += string.Format("[COMMENT: The event was originally created on" + 
        "{0} at {1} by an application with productId {2}]",
        created.ToShortDateString(), created.ToShortTimeString(), productId);
    }
}
See Also