Extending built-in items converters from Gantt Chart Light Library

Although our Light Library components do not offer ItemsSource properties to address custom item collection data binding (being designed for performance), it is usually enough to apply the built-in TaskItemsConverter (or ResourceItemsConverter) to your own data collections to prepare GanttChartItem (or ScheduleChartItem) collections that can be directly set as component Items (for this purpose the Items properties of our controls have been defined with read-write accessibility).

TaskItemsConverter (and ResourceItemsConverter as well) are designed to convert your own data collections to our supported data types using reflection, reading and writing your own data properties by using the names you indicate as specific *MemberPath settings. However, a set of assumed limitations need to be noted: binding large data collections may reduce performance since reflection is used, syncing cannot be partially one or two-way, not all internal object properties are supported for conversion, and extra custom properties of data items are not mapped to any output item property (since they have not been known at design time).

For example, GanttChartItem object includes special properties for specific scenarios (such as IsHidden property that allows the developer to specify which items are visible at a specific time without resetting the Items collection) that do not have MemberPath counterparts in TaskItemsConverter class, so are not synced by the converter.

To address these issues occurring in very specific cases that do not fit well with the built-in converter behavior, you have a few custom development options that you can follow: