DataGridViewRowPrePaintEventArgs.PaintParts DataGridViewRowPrePaintEventArgs.PaintParts DataGridViewRowPrePaintEventArgs.PaintParts DataGridViewRowPrePaintEventArgs.PaintParts Property

定義

描画されるセル部分。The cell parts that are to be painted.

public:
 property System::Windows::Forms::DataGridViewPaintParts PaintParts { System::Windows::Forms::DataGridViewPaintParts get(); void set(System::Windows::Forms::DataGridViewPaintParts value); };
public System.Windows.Forms.DataGridViewPaintParts PaintParts { get; set; }
member this.PaintParts : System.Windows.Forms.DataGridViewPaintParts with get, set
Public Property PaintParts As DataGridViewPaintParts

プロパティ値

描画される部分を指定する、DataGridViewPaintParts 値のビットごとの組み合わせ。A bitwise combination of DataGridViewPaintParts values specifying the parts to be painted.

例外

このプロパティの設定時に指定された値が、DataGridViewPaintParts 値の有効なビットごとの組み合わせではありません。The specified value when setting this property is not a valid bitwise combination of DataGridViewPaintParts values.

次のコード例は、このプロパティの使用を示しています。The following code example illustrates the use of this property. この例で使用できる例の一部は、方法。Windows フォームの 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 'dataGridView1_RowPrePaint

適用対象

こちらもご覧ください