DataGridViewCellPaintingEventArgs Klasse

Definition

Stellt Daten für das CellPainting-Ereignis bereit.Provides data for the CellPainting event.

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

Beispiele

Im folgenden Codebeispiel wird die Verwendung dieses Typs veranschaulicht.The following code example illustrates the use of this type. Weitere Informationen finden Sie unter Gewusst wie: Anpassen der Darstellung von Zellen im Windows Forms DataGridView-SteuerElement.For more information, see How to: Customize the Appearance of Cells in the Windows Forms DataGridView Control.

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

Hinweise

Das- CellPainting Ereignis wird für jedes DataGridViewCell , das in einem sichtbar ist, ausgelöst DataGridView .The CellPainting event is raised for each DataGridViewCell that is visible on a DataGridView. Um die Leistung zu verbessern, legen Sie die Eigenschaften in einer fest, DataGridViewCellPaintingEventArgs um die Darstellung der Zelle zu ändern, anstatt direkt auf eine Zelle im zuzugreifen DataGridView .To improve performance, set the properties in a DataGridViewCellPaintingEventArgs to change the appearance of the cell instead of directly accessing a cell in the DataGridView. Wenn Sie die Zelle manuell zeichnen, legen Sie die- HandledEventArgs.Handled Eigenschaft auf fest true .If you manually paint the cell, set the HandledEventArgs.Handled property to true. Wenn Sie nicht auf festlegen HandledEventArgs.Handled true , werden die Anpassungen in der Zelle angezeigt.If you do not set HandledEventArgs.Handled to true, the cell will paint over your customizations.

Konstruktoren

DataGridViewCellPaintingEventArgs(DataGridView, Graphics, Rectangle, Rectangle, Int32, Int32, DataGridViewElementStates, Object, Object, String, DataGridViewCellStyle, DataGridViewAdvancedBorderStyle, DataGridViewPaintParts)

Initialisiert eine neue Instanz der DataGridViewCellPaintingEventArgs-Klasse.Initializes a new instance of the DataGridViewCellPaintingEventArgs class.

Eigenschaften

AdvancedBorderStyle

Ruft die Rahmenart der aktuellen DataGridViewCell ab.Gets the border style of the current DataGridViewCell.

CellBounds

Ruft die Grenzen der aktuellen DataGridViewCell ab.Get the bounds of the current DataGridViewCell.

CellStyle

Ruft den Zellstil der aktuellen DataGridViewCell ab.Gets the cell style of the current DataGridViewCell.

ClipBounds

Ruft den Bereich der DataGridView ab, der neu gezeichnet werden muss.Gets the area of the DataGridView that needs to be repainted.

ColumnIndex

Ruft den Spaltenindex der aktuellen DataGridViewCell ab.Gets the column index of the current DataGridViewCell.

ErrorText

Ruft eine Zeichenfolge ab, die eine Fehlermeldung für die aktuelle DataGridViewCell darstellt.Gets a string that represents an error message for the current DataGridViewCell.

FormattedValue

Ruft den formatierten Wert der aktuellen DataGridViewCell ab.Gets the formatted value of the current DataGridViewCell.

Graphics

Ruft die Graphics ab, mit der die aktuelle DataGridViewCell gezeichnet wird.Gets the Graphics used to paint the current DataGridViewCell.

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.Gets or sets a value that indicates whether the event handler has completely handled the event or whether the system should continue its own processing.

(Geerbt von HandledEventArgs)
PaintParts

Die zu zeichnenden Zellteile.The cell parts that are to be painted.

RowIndex

Ruft den Spaltenindex der aktuellen DataGridViewCell ab.Gets the row index of the current DataGridViewCell.

State

Ruft den Zustand der aktuellen DataGridViewCell ab.Gets the state of the current DataGridViewCell.

Value

Ruft den Wert der aktuellen DataGridViewCell ab.Gets the value of the current DataGridViewCell.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
Paint(Rectangle, DataGridViewPaintParts)

Zeichnet die angegebenen Teile der Zelle für den Bereich in den angegebenen Grenzen.Paints the specified parts of the cell for the area in the specified bounds.

PaintBackground(Rectangle, Boolean)

Zeichnet den Zellhintergrund für den Bereich in den angegebenen Grenzen.Paints the cell background for the area in the specified bounds.

PaintContent(Rectangle)

Zeichnet den Zellinhalt für den Bereich in den angegebenen Grenzen.Paints the cell content for the area in the specified bounds.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch