DataGridViewRowPrePaintEventArgs Classe

Définition

Fournit des données pour l'événement RowPrePaint.

public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
    inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
Héritage
DataGridViewRowPrePaintEventArgs

Exemples

L’exemple de code suivant montre comment gérer l’événement RowPrePaint pour dessiner un arrière-plan personnalisé pour les cellules sélectionnées. Cet exemple de code fait partie d’un exemple plus large fourni dans 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

Remarques

L’événement RowPrePaint se produit avant qu’une ligne soit peinte sur un DataGridView contrôle. RowPrePaint vous permet d’ajuster manuellement l’apparence de la ligne avant que l’une des cellules de la ligne ne soit peinte. Cela est utile si vous souhaitez personnaliser la ligne, par exemple pour produire une ligne où le contenu d’une colonne s’étend sur plusieurs colonnes. Utilisez les propriétés dans DataGridViewRowPrePaintEventArgs pour obtenir les paramètres de la ligne sans accéder directement à la ligne dans le DataGridView.

Constructeurs

Nom Description
DataGridViewRowPrePaintEventArgs(DataGridView, Graphics, Rectangle, Rectangle, Int32, DataGridViewElementStates, String, DataGridViewCellStyle, Boolean, Boolean)

Initialise une nouvelle instance de la classe DataGridViewRowPrePaintEventArgs.

Propriétés

Nom Description
ClipBounds

Obtient ou définit la zone de la DataGridView zone qui doit être repeinte.

ErrorText

Obtient une chaîne qui représente un message d’erreur pour le message d’erreur actuel DataGridViewRow.

Graphics

Obtient l’utilisé Graphics pour peindre le courant DataGridViewRow.

Handled

Obtient ou définit une valeur qui indique si le gestionnaire d’événements a complètement géré l’événement ou si le système doit continuer son propre traitement.

(Hérité de HandledEventArgs)
InheritedRowStyle

Obtient le style de cellule appliqué à la ligne.

IsFirstDisplayedRow

Obtient une valeur indiquant si la ligne actuelle est la première ligne actuellement affichée dans le DataGridView.

IsLastVisibleRow

Obtient une valeur indiquant si la ligne actuelle est la dernière ligne visible dans le DataGridView.

PaintParts

Parties de cellule à peindre.

RowBounds

Obtenez les limites du fichier actuel DataGridViewRow.

RowIndex

Obtient l’index du fichier actif DataGridViewRow.

State

Obtient l’état du fichier actif DataGridViewRow.

Méthodes

Nom Description
DrawFocus(Rectangle, Boolean)

Dessine le rectangle de focus autour des limites spécifiées.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
PaintCells(Rectangle, DataGridViewPaintParts)

Peint les parties de cellule spécifiées pour la zone dans les limites spécifiées.

PaintCellsBackground(Rectangle, Boolean)

Peint les arrière-plans de cellule de la zone dans les limites spécifiées.

PaintCellsContent(Rectangle)

Peint le contenu des cellules de la zone dans les limites spécifiées.

PaintHeader(Boolean)

Peint l’en-tête de ligne entier de l’élément actif DataGridViewRow.

PaintHeader(DataGridViewPaintParts)

Peint les parties spécifiées de l’en-tête de ligne de la ligne active.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à

Voir aussi