DataGridViewCellPaintingEventArgs Clase
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í.
Proporciona datos para el evento CellPainting.
public ref class DataGridViewCellPaintingEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewCellPaintingEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewCellPaintingEventArgs = class
inherit HandledEventArgs
Public Class DataGridViewCellPaintingEventArgs
Inherits HandledEventArgs
- Herencia
Ejemplos
En el ejemplo de código siguiente se muestra el uso de este tipo. Para obtener más información, consulte Cómo: Personalizar la apariencia de las celdas en el control DataGridView de 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;
}
}
}
}
Private Sub dataGridView1_CellPainting(ByVal sender As Object, _
ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) _
Handles dataGridView1.CellPainting
If Me.dataGridView1.Columns("ContactName").Index = _
e.ColumnIndex AndAlso e.RowIndex >= 0 Then
Dim newRect As New Rectangle(e.CellBounds.X + 1, e.CellBounds.Y + 1, _
e.CellBounds.Width - 4, e.CellBounds.Height - 4)
Dim backColorBrush As New SolidBrush(e.CellStyle.BackColor)
Dim gridBrush As New SolidBrush(Me.dataGridView1.GridColor)
Dim gridLinePen As New Pen(gridBrush)
Try
' 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 IsNot Nothing) Then
e.Graphics.DrawString(CStr(e.Value), e.CellStyle.Font, _
Brushes.Crimson, e.CellBounds.X + 2, e.CellBounds.Y + 2, _
StringFormat.GenericDefault)
End If
e.Handled = True
Finally
gridLinePen.Dispose()
gridBrush.Dispose()
backColorBrush.Dispose()
End Try
End If
End Sub
Comentarios
El CellPainting evento se genera para cada uno de los DataGridViewCell que están visibles en un DataGridView. Para mejorar el rendimiento, establezca las propiedades de para DataGridViewCellPaintingEventArgs cambiar la apariencia de la celda en lugar de acceder directamente a una celda de .DataGridView Si pinta manualmente la celda, establezca la HandledEventArgs.Handled propiedad true
en . Si no establece HandledEventArgs.Handledtrue
en , la celda pintará sobre las personalizaciones.
Constructores
Propiedades
AdvancedBorderStyle |
Obtiene el estilo de borde de la celda DataGridViewCell actual. |
CellBounds |
Obtiene los límites de la celda DataGridViewCell actual. |
CellStyle |
Obtiene el estilo de celda de la celda DataGridViewCell actual. |
ClipBounds |
Obtiene el área de DataGridView que es necesario volver a dibujar. |
ColumnIndex |
Obtiene el índice de columna de la celda DataGridViewCell actual. |
ErrorText |
Obtiene una cadena que representa un mensaje de error para la celda DataGridViewCell actual. |
FormattedValue |
Obtiene el valor con formato de la celda DataGridViewCell actual. |
Graphics |
Obtiene el objeto Graphics que se utiliza para dibujar la celda DataGridViewCell actual. |
Handled |
Obtiene o establece un valor que indica si el controlador de eventos ha controlado completamente el evento o si el sistema debe continuar con su propio procesamiento. (Heredado de HandledEventArgs) |
PaintParts |
Partes de la celda que se van a dibujar. |
RowIndex |
Obtiene el índice de fila de la celda DataGridViewCell actual. |
State |
Obtiene el estado de la celda DataGridViewCell actual. |
Value |
Obtiene el valor de la celda DataGridViewCell actual. |
Métodos
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
Paint(Rectangle, DataGridViewPaintParts) |
Dibuja las partes especificadas de la celda para el área comprendida entre los límites especificados. |
PaintBackground(Rectangle, Boolean) |
Pinta el fondo de celda del área comprendida entre los límites especificados. |
PaintContent(Rectangle) |
Dibuja el contenido de celda del área comprendida entre los límites especificados. |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |