0

I have a gridview where I group some columns of it..

Here's how I group them:

 void gvDetailsDefinition()
 {
            ColumnGroupsViewDefinition view = new ColumnGroupsViewDefinition();
            view.ColumnGroups.Add(new GridViewColumnGroup());
            view.ColumnGroups[0].Rows.Add(new GridViewColumnGroupRow());
            view.ColumnGroups[0].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["ItemCode"]);
            view.ColumnGroups[0].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["ItemDescription"]);
            view.ColumnGroups[0].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["MeasurementUnitSelection"]);

            view.ColumnGroups.Add(new GridViewColumnGroup("January"));
            view.ColumnGroups[1].Rows.Add(new GridViewColumnGroupRow());
            view.ColumnGroups[1].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["JanuaryQuantity"]);
            view.ColumnGroups[1].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["JanuaryVolume"]);

            view.ColumnGroups.Add(new GridViewColumnGroup("February"));
            view.ColumnGroups[2].Rows.Add(new GridViewColumnGroupRow());
            view.ColumnGroups[2].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["FebruaryQuantity"]);
            view.ColumnGroups[2].Rows[0].Columns.Add(gvSalesForecastDetails.Columns["FebruaryVolume"]);

            gvSalesForecastDetails.ViewDefinition = view;
}

is it possible for me to change the Font size and weight of the ColumnGroup?

here's the result of it:

enter image description here

Sam Teng Wong
  • 2,379
  • 5
  • 34
  • 56

1 Answers1

0

You have to use ViewCellFormatting event:

private void gvSalesForecastDetails_ViewCellFormatting(object sender, CellFormattingEventArgs e)
    {
        if (e.CellElement is GridHeaderCellElement)
        {
            if ((((string)(e.CellElement).Value) == "January" || ((string)(e.CellElement).Value) == "Feberuary" || ((string)(e.CellElement).Value) == "March"))
            {
                e.CellElement.Font = BOLD_FONT;//the font u want

                e.CellElement.ForeColor = Color.SteelBlue;
                e.CellElement.GradientStyle = GradientStyles.Solid;
                e.CellElement.DrawFill = true;
                e.CellElement.BackColor = Color.White;
            }
            else
            {
                e.CellElement.ResetValue(LightVisualElement.FontProperty, ValueResetFlags.Local);
                e.CellElement.ResetValue(LightVisualElement.DrawFillProperty, ValueResetFlags.Local);
                e.CellElement.ResetValue(LightVisualElement.BackColorProperty, ValueResetFlags.Local);
                e.CellElement.ResetValue(LightVisualElement.ForeColorProperty, ValueResetFlags.Local);
                e.CellElement.ResetValue(LightVisualElement.GradientStyleProperty, ValueResetFlags.Local);
            }
        }
    }
Raidri
  • 17,258
  • 9
  • 62
  • 65
  • Is it possible to change the style (bold, for example) or background color of the header text? – Chad Jun 25 '20 at 04:23