Поделиться через


DataGridViewRowPrePaintEventArgs Класс

Определение

Предоставляет данные о событии RowPrePaint.

public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
    inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
Наследование
DataGridViewRowPrePaintEventArgs

Примеры

В следующем примере кода показано, как обработать событие для рисования RowPrePaint пользовательского фона для выбранных ячеек. Этот пример кода является частью более крупного примера, приведенного в разделе 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

Комментарии

Событие RowPrePaint возникает до того, как строка будет закрашена в элементе DataGridView управления . RowPrePaint позволяет вручную настроить внешний вид строки перед закраской любой из ячеек в строке. Это полезно, если вы хотите настроить строку, например, чтобы создать строку, в которой содержимое одного столбца охватывает несколько столбцов. Используйте свойства в , DataGridViewRowPrePaintEventArgs чтобы получить параметры строки без прямого доступа к строке DataGridViewв .

Конструкторы

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

Инициализирует новый экземпляр класса DataGridViewRowPrePaintEventArgs.

Свойства

ClipBounds

Получает или задает область объекта DataGridView, который должен быть повторно закрашен.

ErrorText

Получает строковое значение, которое представляет сообщение об ошибке для текущей ячейки DataGridViewRow.

Graphics

Получает объект Graphics, используемый для закрашивания текущей ячейки DataGridViewRow.

Handled

Получает или задает значение, показывающее, полностью ли обработчик событий обработал событие или система должна продолжить собственную обработку.

(Унаследовано от HandledEventArgs)
InheritedRowStyle

Возвращает стиль ячейки, примененный к строке.

IsFirstDisplayedRow

Возвращает значение, указывающее, является ли текущая строка первой строкой, отображаемой в настоящее время в DataGridView.

IsLastVisibleRow

Возвращает значение, указывающее, является ли текущая строка последней видимой строкой в объекте DataGridView.

PaintParts

Части ячейки, которые должны закрашиваться.

RowBounds

Получает границы текущей ячейки DataGridViewRow.

RowIndex

Получает индекс текущего объекта DataGridViewRow.

State

Получает состояние текущей ячейки DataGridViewRow.

Методы

DrawFocus(Rectangle, Boolean)

Отрисовывает прямоугольник фокуса вокруг указанных границ.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
PaintCells(Rectangle, DataGridViewPaintParts)

Закрашивает указанные части ячейки для области в заданных границах.

PaintCellsBackground(Rectangle, Boolean)

Закрашивает фон ячейки для области в заданных границах.

PaintCellsContent(Rectangle)

Закрашивает содержимое ячейки для области в заданных границах.

PaintHeader(Boolean)

Закрашивает весь заголовок текущей строки DataGridViewRow.

PaintHeader(DataGridViewPaintParts)

Закрашивает указанные части заголовка текущей строки.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел