FlexGrid for WinForms | ComponentOne
C1.Win.C1FlexGrid Namespace / OwnerDrawCellEventArgs Class / Style Property

In This Topic
    Style Property (OwnerDrawCellEventArgs)
    In This Topic
    Sets or sets the CellStyle object used to paint the cell.
    Public Property Style As CellStyle
    public CellStyle Style {get; set;}

    This parameter is often used to provide dynamic formatting based on cell contents. For example, if the cell contains a value outside a given range, the event handler may assign a new style to this parameter.

    Although it is legal to modify the members of the CellStyle parameter in this event, this is not recommended, since the change will affect other cells that may be using this style.

    The code below uses the OwnerDrawCell event to highlight cells that indicate low stock levels.
    // create style used to display low-stock items
    CellStyle cs = _flex.Styles.Add("Critical");
    cs.BackColor = Color.Red;
    private void _flex_OwnerDrawCell(object sender, C1.Win.C1FlexGrid.OwnerDrawCellEventArgs e)
        // ignore fixed cells
        if (e.Row < _flex.Rows.Fixed || e.Col < _flex.Cols.Fixed)
        // apply custom style if reorder level is critical
        if (_flex.Cols[e.Col].Name == "UnitsInStock")
            // change the style by applying the "Critical" style to the Style parameter
            // (do not change the e.Style.BackColor property directly since that would
            // affect other cells that use this style)
            if ((short)_flex[e.Row, "UnitsInStock"] < (short)_flex[e.Row, "ReorderLevel"])
                e.Style = _flex.Styles["Critical"];
    See Also