DataGridViewRowPrePaintEventArgs Klasse

Definition

Stellt Daten für das RowPrePaint-Ereignis bereit.

public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
    inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
Vererbung
DataGridViewRowPrePaintEventArgs

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie das RowPrePaint Ereignis behandelt wird, um einen benutzerdefinierten Hintergrund für ausgewählte Zellen zu zeichnen. Dieses Codebeispiel ist Teil eines größeren Beispiels unter Gewusst wie: Anpassen der Darstellung von Zeilen im Windows Forms DataGridView-Steuerelement.

// 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

Hinweise

Das RowPrePaint Ereignis tritt auf, bevor eine Zeile für ein DataGridView Steuerelement gezeichnet wird. RowPrePaint ermöglicht es Ihnen, die Darstellung der Zeile manuell anzupassen, bevor eine der Zellen in der Zeile gezeichnet wird. Dies ist nützlich, wenn Sie die Zeile anpassen möchten, z. B. um eine Zeile zu erzeugen, in der sich der Inhalt einer Spalte über mehrere Spalten erstreckt. Verwenden Sie die Eigenschaften in DataGridViewRowPrePaintEventArgs , um die Einstellungen der Zeile abzurufen, ohne direkt auf die Zeile im DataGridViewzuzugreifen.

Konstruktoren

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

Initialisiert eine neue Instanz der DataGridViewRowPrePaintEventArgs-Klasse.

Eigenschaften

ClipBounds

Ruft die Fläche der DataGridView ab, die neu zu zeichnen ist, oder legt diese fest.

ErrorText

Ruft eine Zeichenfolge ab, die eine Fehlermeldung für die aktuelle DataGridViewRow darstellt.

Graphics

Ruft die Graphics ab, mit der die aktuelle DataGridViewRow gezeichnet wird.

Handled

Ruft einen Wert ab, der angibt, ob der Ereignishandler das Ereignis vollständig behandelt hat oder ob das System mit der eigenen Verarbeitung fortfahren soll, oder legt diesen Wert fest.

(Geerbt von HandledEventArgs)
InheritedRowStyle

Ruft den auf die Zeile angewendeten Zellstil ab.

IsFirstDisplayedRow

Ruft einen Wert ab, der angibt, ob die aktuelle Zeile die erste Zeile in der gerade angezeigten DataGridView ist.

IsLastVisibleRow

Ruft einen Wert ab, der angibt, ob die aktuelle Zeile die letzte sichtbare Zeile in der DataGridView ist.

PaintParts

Die zu zeichnenden Zellteile.

RowBounds

Ruft die Grenzen der aktuellen DataGridViewRow ab.

RowIndex

Ruft den Index der aktuellen DataGridViewRow ab.

State

Ruft den Zustand der aktuellen DataGridViewRow ab.

Methoden

DrawFocus(Rectangle, Boolean)

Zeichnet das Fokusrechteck um die angegebenen Grenzen.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
PaintCells(Rectangle, DataGridViewPaintParts)

Zeichnet, die angegebenen Zellteile für den Bereich in den angegebenen Grenzen.

PaintCellsBackground(Rectangle, Boolean)

Zeichnet die Zellhintergründe für den Bereich in den angegebenen Grenzen.

PaintCellsContent(Rectangle)

Zeichnet den Zellinhalt für den Bereich in den angegebenen Grenzen.

PaintHeader(Boolean)

Zeichnet den gesamten Zeilenheader der aktuellen DataGridViewRow.

PaintHeader(DataGridViewPaintParts)

Zeichnet die angegebenen Teile des Zeilenheaders der aktuellen Zeile.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen