Gets appearances and visual styles, defined for the current instance of the Grid.

Namespace: Dapfor.Net.Ui
Assembly: Dapfor.Net (in Dapfor.Net.dll) Version: 2.10.3.24917 (2.10.3.24917)

Syntax

C#
public Grid..::..GridAppearance Appearance { get; }
Visual Basic
Public ReadOnly Property Appearance As Grid..::..GridAppearance
	Get
Visual C++
public:
property Grid..::..GridAppearance^ Appearance {
	Grid..::..GridAppearance^ get ();
}
F#
member Appearance : Grid..::..GridAppearance with get

Property Value

Type: Grid..::..GridAppearance
The appearances.

Remarks

.Net Grid applies different styles for even and odd rows, enabling the programmer to his own color styles and even gradient colors via via Grid.Appearance, via Header.Appearance and Column.Appearance property.

.Net Grid uses appearance inheritance. By default, colors and styles for all grids are taken from Dapfor.Net.Ui.Preferences class. However, these preferences can be overridden for every grid separately via Grid.Appearance property. Then, every Header and Column can override previously set appearance for every hierarchical level individually. And finally, you can also use Row.Appearance and Cell.Appearance properties to change individual appearance of rows and cells, but using of these properties may require allocation of a significant volume of memory.

 Copy imageCopy
public void CellAppearance(Grid grid)
{
    grid.Rows.Add(new Product());
    Row row = grid.Rows[0];

    //Set appearance for even and odd rows on all hierarchical levels
    grid.Appearance.EvenRows.BackColor = Color.Gray;
    grid.Appearance.OddRows.BackColor = Color.Black;

    //Set appearance for even and odd rows on the top hierarchical level
    grid.Headers[0].Appearance.EvenRows.BackColor = Color.Gray;
    grid.Headers[0].Appearance.OddRows.BackColor = Color.Black;

    //Set a back color for cell
    row["Price"].Appearance.BackColor = Color.Green;
}

If you are interested in maximum performance of the grid, you should subscribe for Grid.PaintCell event to change appearance instead of setting Row.Appearance and Cell.Appearance properties:

 Copy imageCopy
grid.PaintCell += delegate(object sender, PaintCellEventArgs e)
{
    //custom paint...
    e.Appearance.BackColor = Color.Red;
    e.Font = SystemFonts.MenuFont;
}

See Also