DataGridViewRowPostPaintEventArgs.Graphics プロパティ

定義

現在の Graphics の描画に使用される DataGridViewRow を取得します。Gets the Graphics used to paint the current DataGridViewRow.

public:
 property System::Drawing::Graphics ^ Graphics { System::Drawing::Graphics ^ get(); };
public System.Drawing.Graphics Graphics { get; }
member this.Graphics : System.Drawing.Graphics
Public ReadOnly Property Graphics As Graphics

プロパティ値

現在の Graphics の描画に使用する DataGridViewRowThe Graphics used to paint the current DataGridViewRow.

次のコード例は、プロパティを使用Graphicsしてカスタムの背景を描画する方法を示しています。The following code example demonstrates how to use the Graphics property to paint a custom background. コードは実際にはDataGridViewRowPrePaintEventArgs.Graphicsプロパティを使用しますが、このプロパティはのDataGridViewRowPostPaintEventArgsプロパティとGraphicsほぼ同じです。Although the code actually uses the DataGridViewRowPrePaintEventArgs.Graphics property, this property is nearly identical to the Graphics property of DataGridViewRowPostPaintEventArgs. 変数eの型DataGridViewRowPrePaintEventArgsはです。The variable, e, is of type DataGridViewRowPrePaintEventArgs. このコード例は、次の方法で提供される大規模な例の一部です。Windows フォーム DataGridView コントロールの行の外観をカスタマイズします。This code example is part of a larger example provided in How to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.

// 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);
    }
}
' 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

注釈

クラスGraphicsには、カスタム描画に便利なプロパティとメソッドが用意されています。The Graphics class provides properties and methods that are useful for custom drawing.

適用対象

こちらもご覧ください