DataGridView.RowPrePaint (Evento)
Actualización: noviembre 2007
Se produce antes de que se dibuje un objeto DataGridViewRow
Ensamblado: System.Windows.Forms (en System.Windows.Forms.dll)
Puede controlar este evento en solitario o junto con el evento RowPostPaint para personalizar la apariencia de las filas del control. Puede pintar filas enteras usted, o puede pintar determinadas partes de las filas y utilizar los métodos siguientes de la clase DataGridViewRowPrePaintEventArgs para pintar otras partes:
También puede utilizar la clase VisualStyleRenderer para pintar controles estándar utilizando el tema actual. Para obtener más información, vea Representar controles con estilos visuales. Si utiliza Visual Studio 2005, también tiene acceso a una amplia biblioteca de imágenes estándar que puede usar con el control DataGridView.
Para obtener más información, vea Biblioteca de imágenes de Visual Studio 2005 y Biblioteca de imágenes de Visual Studio 2008 y Biblioteca de imágenes de Visual Studio.
Para obtener más información sobre la forma de controlar eventos, vea Utilizar eventos.
En el ejemplo de código siguiente se muestra cómo utilizar un controlador para el evento RowPrePaint con el fin de dibujar un fondo de fila degradado si se selecciona la fila. Este ejemplo forma parte de un ejemplo más extenso que se proporciona en Cómo: Personalizar la apariencia de las filas en el control DataGridView de formularios Windows Forms.
// Paints the custom selection background for selected rows. void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e) { // Do not automatically paint the focus rectangle. e.PaintParts &= ~DataGridViewPaintParts.Focus; // Determine whether the cell should be painted // with the custom selection background. if ((e.State & DataGridViewElementStates.Selected) == DataGridViewElementStates.Selected) { // Calculate the bounds of the row. Rectangle rowBounds = new Rectangle( this.dataGridView1.RowHeadersWidth, e.RowBounds.Top, this.dataGridView1.Columns.GetColumnsWidth( DataGridViewElementStates.Visible) - this.dataGridView1.HorizontalScrollingOffset + 1, e.RowBounds.Height); // Paint the custom selection background. using (Brush backbrush = new System.Drawing.Drawing2D.LinearGradientBrush(rowBounds, this.dataGridView1.DefaultCellStyle.SelectionBackColor, e.InheritedRowStyle.ForeColor, System.Drawing.Drawing2D.LinearGradientMode.Horizontal)) { e.Graphics.FillRectangle(backbrush, rowBounds); } } }
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.