Skip to main content
A newer version of this page is available. .

GanttControl.CustomTaskDisplayText Event

Allows you to specify the caption displayed inside, to the left, and to the right of a task.

Namespace: DevExpress.XtraGantt

Assembly: DevExpress.XtraGantt.v20.2.dll

NuGet Package: DevExpress.Win.Gantt

Declaration

[DXCategory("Events")]
public event CustomTaskDisplayTextEventHandler CustomTaskDisplayText

Event Data

The CustomTaskDisplayText event's data class is CustomTaskDisplayTextEventArgs. The following properties provide information specific to this event:

Property Description
InsideText Gets or sets the text displayed inside the task’s bar. This property is not in effect for summary tasks and milestones.
LeftText Gets or sets the text displayed to the left of the task’s bar.
Node Gets the processed node.
RightText Gets or sets the text displayed to the right of the task’s bar.
TaskInfo Provides access to view information about the task.

Remarks

The GanttControl.ChartMappings property provides access to data fields mapped to task properties that specify how a task is displayed in the chart area. The TextFieldName property specifies the data field that contains task captions.

The caption is displayed next to the task in the chart area. To obtain a task’s caption in code, you can use the GetText(GanttControlNode), GetText(Int32), and GetText() methods.

You can also handle the CustomTaskDisplayText event, which fires before a task is displayed, to specify a caption dynamically.

A task’s caption can also be displayed in interaction tooltips. You can use the InteractionTooltipTextFieldName property to specify the data field that contains task captions for tooltips. To obtain a task’s tooltip caption in code, use the GetTooltipText(Int32) method.

Example

The code below shows how to display captions to the left and to the right of the bars.

HashSet<int> criticalPathIds = new HashSet<int> { 1, 2, 3, 6, 7, 8, 10, 11, 13 };
ganttControl.CustomTaskDisplayText += (sender, e) => {
    int taskId = Convert.ToInt32(e.Node.GetValue("Id"));
    if(criticalPathIds.Contains(taskId)) {
        e.RightText = "High priority";
    }
    else {
        e.RightText = string.Empty;
        e.LeftText = "Normal priority";
    }
};

Note

Run the Gantt Code Examples demo to see the complete example.

See Also