TableLayoutPanel.OnCellPaint(TableLayoutCellPaintEventArgs) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Recibe una llamada cuando se debe actualizar la celda.
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)
Parámetros
TableLayoutCellPaintEventArgs que proporciona datos para el evento.
Ejemplos
En el ejemplo de código siguiente se muestra cómo invalidar el OnCellPaint método para crear una apariencia personalizada para una celda.
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