DataGridViewPaintParts Перечисление

Определение

Задает значения для определения частей объекта DataGridViewCell, которые должны окрашиваться.Defines values for specifying the parts of a DataGridViewCell that are to be painted.

Это перечисление имеет атрибут FlagsAttribute, который разрешает побитовое сочетание значений его элементов.

public enum class DataGridViewPaintParts
[System.Flags]
public enum DataGridViewPaintParts
[<System.Flags>]
type DataGridViewPaintParts = 
Public Enum DataGridViewPaintParts
Наследование
DataGridViewPaintParts
Атрибуты

Поля

All 127

Все части ячейки должны быть окрашены.All parts of the cell should be painted.

Background 1

Фон ячейки должен быть окрашен.The background of the cell should be painted.

Border 2

Граница ячейки должна быть окрашена.The border of the cell should be painted.

ContentBackground 4

Фон содержимого ячейки должен быть окрашен.The background of the cell content should be painted.

ContentForeground 8

Передний план содержимого ячейки должен быть окрашен.The foreground of the cell content should be painted.

ErrorIcon 16

Значок ошибки ячейки должен быть окрашен.The cell error icon should be painted.

Focus 32

Прямоугольник фокуса должен быть окрашен вокруг ячейки.The focus rectangle should be painted around the cell.

None 0

Ничего не окрашивается.Nothing should be painted.

SelectionBackground 64

Фон ячейки должен быть окрашен при выборе ячейки.The background of the cell should be painted when the cell is selected.

Примеры

В следующем примере кода показано использование этого типа.The following code example illustrates the use of this type. Этот пример является частью большого примера, в котором описывается настройка внешнего вида строк в элементе управления Windows Forms DataGridView.This example is part of a larger example available in 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

Комментарии

Это перечисление используется защищенным DataGridViewCell.Paint методом и обработчиками для CellPainting событий, RowPrePaint и RowPostPaint DataGridView элемента управления.This enumeration is used by the protected DataGridViewCell.Paint method and by handlers for the CellPainting, RowPrePaint, and RowPostPaint events of the DataGridView control.

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

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