TableLayoutPanel.OnCellPaint(TableLayoutCellPaintEventArgs) Method

Definition

Receives a call when the cell should be refreshed.

protected:
 virtual void OnCellPaint(System::Windows::Forms::TableLayoutCellPaintEventArgs ^ e);
protected virtual void OnCellPaint (System.Windows.Forms.TableLayoutCellPaintEventArgs e);
abstract member OnCellPaint : System.Windows.Forms.TableLayoutCellPaintEventArgs -> unit
override this.OnCellPaint : System.Windows.Forms.TableLayoutCellPaintEventArgs -> unit
Protected Overridable Sub OnCellPaint (e As TableLayoutCellPaintEventArgs)

Parameters

e
TableLayoutCellPaintEventArgs

A TableLayoutCellPaintEventArgs that provides data for the event.

Examples

The following code example demonstrates how to override the OnCellPaint method to create a custom appearance for a cell.

public class DemoTableLayoutPanel : TableLayoutPanel
{
    protected override void OnCellPaint(TableLayoutCellPaintEventArgs e)
    {
        base.OnCellPaint(e);

        Control c = this.GetControlFromPosition(e.Column, e.Row);

        if ( c != null )
        {
            Graphics g = e.Graphics;

            g.DrawRectangle(
                Pens.Red, 
                e.CellBounds.Location.X+1,
                e.CellBounds.Location.Y + 1,
                e.CellBounds.Width - 2, e.CellBounds.Height - 2);

            g.FillRectangle(
                Brushes.Blue, 
                e.CellBounds.Location.X + 1, 
                e.CellBounds.Location.Y + 1, 
                e.CellBounds.Width - 2, 
                e.CellBounds.Height - 2);
        };
    }
}
Public Class DemoTableLayoutPanel
    Inherits TableLayoutPanel

    Protected Overrides Sub OnCellPaint( _
    ByVal e As System.Windows.Forms.TableLayoutCellPaintEventArgs)

        MyBase.OnCellPaint(e)

        Dim c As Control = Me.GetControlFromPosition(e.Column, e.Row)

        If c IsNot Nothing Then
            Dim g As Graphics = e.Graphics

            g.DrawRectangle( _
            Pens.Red, _
            e.CellBounds.Location.X + 1, _
            e.CellBounds.Location.Y + 1, _
            e.CellBounds.Width - 2, _
            e.CellBounds.Height - 2)

            g.FillRectangle( _
            Brushes.Blue, _
            e.CellBounds.Location.X + 1, _
            e.CellBounds.Location.Y + 1, _
            e.CellBounds.Width - 2, _
            e.CellBounds.Height - 2)
        End If

    End Sub

End Class

Applies to