DataGridViewRowPrePaintEventArgs Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece dados para o evento de RowPrePaint .
public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
- Herança
Exemplos
O exemplo de código a seguir demonstra como manipular o RowPrePaint evento para desenhar uma tela de fundo personalizada para células selecionadas. Este exemplo de código faz parte de um exemplo maior fornecido em How to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.
// 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);
}
}
}
' Paints the custom selection background for selected rows.
Sub dataGridView1_RowPrePaint(ByVal sender As Object, _
ByVal e As DataGridViewRowPrePaintEventArgs) _
Handles dataGridView1.RowPrePaint
' Do not automatically paint the focus rectangle.
e.PaintParts = e.PaintParts And Not DataGridViewPaintParts.Focus
' Determine whether the cell should be painted with the
' custom selection background.
If (e.State And DataGridViewElementStates.Selected) = _
DataGridViewElementStates.Selected Then
' Calculate the bounds of the row.
Dim rowBounds As New Rectangle( _
Me.dataGridView1.RowHeadersWidth, e.RowBounds.Top, _
Me.dataGridView1.Columns.GetColumnsWidth( _
DataGridViewElementStates.Visible) - _
Me.dataGridView1.HorizontalScrollingOffset + 1, _
e.RowBounds.Height)
' Paint the custom selection background.
Dim backbrush As New _
System.Drawing.Drawing2D.LinearGradientBrush(rowBounds, _
Me.dataGridView1.DefaultCellStyle.SelectionBackColor, _
e.InheritedRowStyle.ForeColor, _
System.Drawing.Drawing2D.LinearGradientMode.Horizontal)
Try
e.Graphics.FillRectangle(backbrush, rowBounds)
Finally
backbrush.Dispose()
End Try
End If
End Sub
Comentários
O RowPrePaint evento ocorre antes de uma linha ser pintada em um DataGridView controle . RowPrePaint permite ajustar manualmente a aparência da linha antes que qualquer uma das células na linha seja pintada. Isso é útil se você quiser personalizar a linha, como produzir uma linha em que o conteúdo de uma coluna abrange várias colunas. Use as propriedades em DataGridViewRowPrePaintEventArgs para obter as configurações da linha sem acessar diretamente a linha no DataGridView.
Construtores
Propriedades
ClipBounds |
Obtém ou define a área do DataGridView que precisa ser pintada novamente. |
ErrorText |
Obtém uma cadeia de caracteres que representa uma mensagem de erro para o DataGridViewRow atual. |
Graphics |
Obtém o Graphics usado para pintar o DataGridViewRow atual. |
Handled |
Obtém ou define um valor que indica se o manipulador de eventos tratou completamente o evento ou se o sistema deve continuar seu próprio processamento. (Herdado de HandledEventArgs) |
InheritedRowStyle |
Obtém o estilo de célula aplicado à linha. |
IsFirstDisplayedRow |
Obtém um valor que indica se a linha atual é a primeira linha exibida no momento no DataGridView. |
IsLastVisibleRow |
Obtém um valor que indica se a linha atual é a última exibida no DataGridView. |
PaintParts |
As partes da célula que devem ser pintadas. |
RowBounds |
Obter os limites da DataGridViewRow atual. |
RowIndex |
Obtém o índice do DataGridViewRow atual. |
State |
Obtém o estado do DataGridViewRow atual. |
Métodos
DrawFocus(Rectangle, Boolean) |
Desenha o retângulo de foco em torno dos limites especificados. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
PaintCells(Rectangle, DataGridViewPaintParts) |
Pinta as partes da célula especificada para a área nos limites especificados. |
PaintCellsBackground(Rectangle, Boolean) |
Pinta as telas de fundo da célula da área nos limites especificados. |
PaintCellsContent(Rectangle) |
Pinta o conteúdo da célula da área nos limites especificados. |
PaintHeader(Boolean) |
Pinta o cabeçalho da linha inteira do DataGridViewRow atual. |
PaintHeader(DataGridViewPaintParts) |
Pinta as partes específicas do cabeçalho da linha atual. |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |