Exportar (0) Imprimir
Expandir todo
Expandir Minimizar

DataGridViewCellPaintingEventHandler (Delegado)

Actualización: noviembre 2007

Representa el método que controlará el evento CellPainting de un objeto DataGridView.

Espacio de nombres:  System.Windows.Forms
Ensamblado:  System.Windows.Forms (en System.Windows.Forms.dll)

public delegate void DataGridViewCellPaintingEventHandler(
	Object sender,
	DataGridViewCellPaintingEventArgs e
)
/** @delegate */
public delegate void DataGridViewCellPaintingEventHandler(
	Object sender,
	DataGridViewCellPaintingEventArgs e
)
JScript no admite delegados.

Parámetros

sender
Tipo: System.Object
Origen del evento.
e
Tipo: System.Windows.Forms.DataGridViewCellPaintingEventArgs
Objeto DataGridViewCellPaintingEventArgs que contiene los datos del evento.

Cuando se crea un delegado DataGridViewCellPaintingEventHandler, se identifica el método que controlará el evento. Para asociar el evento al controlador de eventos, se debe agregar una instancia del delegado al evento. Siempre que se produzca el evento, se llamará al controlador de eventos, a menos que se quite el delegado. Para obtener más información sobre los delegados de controladores de eventos, vea Eventos y delegados.

En el siguiente ejemplo se muestra la forma de utilizar este evento para personalizar la apariencia de todas las celdas de una columna determinada.

Este código forma parte de un ejemplo más extenso disponible en Cómo: Personalizar la apariencia de las celdas en el control DataGridView de formularios Windows Forms.

private void dataGridView1_CellPainting(object sender,
System.Windows.Forms.DataGridViewCellPaintingEventArgs e)
{
    if (this.dataGridView1.Columns["ContactName"].Index ==
        e.ColumnIndex && e.RowIndex >= 0)
    {
        Rectangle newRect = new Rectangle(e.CellBounds.X + 1,
            e.CellBounds.Y + 1, e.CellBounds.Width - 4,
            e.CellBounds.Height - 4);

        using (
            Brush gridBrush = new SolidBrush(this.dataGridView1.GridColor),
            backColorBrush = new SolidBrush(e.CellStyle.BackColor))
        {
            using (Pen gridLinePen = new Pen(gridBrush))
            {
                // Erase the cell.
                e.Graphics.FillRectangle(backColorBrush, e.CellBounds);

                // Draw the grid lines (only the right and bottom lines;
                // DataGridView takes care of the others).
                e.Graphics.DrawLine(gridLinePen, e.CellBounds.Left,
                    e.CellBounds.Bottom - 1, e.CellBounds.Right - 1,
                    e.CellBounds.Bottom - 1);
                e.Graphics.DrawLine(gridLinePen, e.CellBounds.Right - 1,
                    e.CellBounds.Top, e.CellBounds.Right - 1,
                    e.CellBounds.Bottom);

                // Draw the inset highlight box.
                e.Graphics.DrawRectangle(Pens.Blue, newRect);

                // Draw the text content of the cell, ignoring alignment.
                if (e.Value != null)
                {
                    e.Graphics.DrawString((String)e.Value, e.CellStyle.Font,
                        Brushes.Crimson, e.CellBounds.X + 2,
                        e.CellBounds.Y + 2, StringFormat.GenericDefault);
                }
                e.Handled = true;
            }
        }
    }
}


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft