Skip to main content
All docs
V25.1
  • CustomDrawTimescaleColumnEventArgs.DrawHtml(HtmlTemplate, Action<DxHtmlPainterArgs>) Method

    Paints the required HTML template inside an element that raised this event.

    Namespace: DevExpress.XtraGantt

    Assembly: DevExpress.XtraGantt.v25.1.dll

    NuGet Package: DevExpress.Win.Gantt

    Declaration

    public void DrawHtml(
        HtmlTemplate template,
        Action<DxHtmlPainterArgs> setupArgs = null
    )

    Parameters

    Name Type Description
    template HtmlTemplate

    A template to draw.

    Optional Parameters

    Name Type Default Description
    setupArgs Action<DxHtmlPainterArgs> null

    Sets up required properties of the DxHtmlPainterArgs object.

    Remarks

    The DrawHtml method allows you to paint custom HTML templates inside DevExpress controls. For instance, the code below illustrates how to handle the GridView.CustomDrawCell event to paint a template stored in an HtmlTemplateCollection inside cells that belong to the “Name” column.

    Static Custom Draw Template

    void OnCustomDrawCell(object sender, RowCellCustomDrawEventArgs e) {
        e.DefaultDraw();
        e.Handled = true;
        if (e.Column.FieldName == "Name")
            e.DrawHtml(htmlTemplateCollection1[0]);
    }
    

    The optional setupArgs delegate allows you to set up additional settings: specify interactivity keys, modify drawing bounds, assign custom values to elements with ${FieldName} placeholders, and more.

    The following example demonstrates how to clip the content based on the container bounds:

    void OnCustomDrawCell(object sender, RowCellCustomDrawEventArgs e) {
        var clipInfo = e.Cache.SaveAndSetClip(e.Bounds);
        try {
            e.DrawHtml(templates[0]);
        } finally {
            e.Cache.ClipInfo.RestoreClipRelease(clipInfo);
        }
    }
    

    Read the following topic for more information and examples: Custom Draw Templates.

    See Also