DataGridViewRowPrePaintEventArgs クラス

定義

RowPrePaint イベントのデータを提供します。Provides data for the RowPrePaint event.

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処理して、選択したセルのカスタムの背景を描画する方法を示します。The following code example demonstrates how to handle the RowPrePaint event to draw a custom background for selected cells. このコード例は、次の方法で提供される大規模な例の一部です。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.

// 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コントロールで行が描画される前に発生します。The RowPrePaint event occurs before a row is painted on a DataGridView control. RowPrePaint行内のセルのいずれかが描画される前に、行の外観を手動で調整できます。RowPrePaint enables you to manually adjust the appearance of the row before any of the cells in the row are painted. これは、行をカスタマイズする場合に便利です。たとえば、1つの列のコンテンツが複数の列にまたがる行を生成する場合に便利です。This is useful if you want to customize the row, such as to produce a row where the content of one column spans multiple columns. のプロパティDataGridViewRowPrePaintEventArgsを使用して、のDataGridView行に直接アクセスせずに行の設定を取得します。Use the properties in DataGridViewRowPrePaintEventArgs to get the settings of the row without directly accessing the row in the DataGridView.

コンストラクター

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

DataGridViewRowPrePaintEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the DataGridViewRowPrePaintEventArgs class.

プロパティ

ClipBounds

再描画が必要な DataGridView の領域を取得または設定します。Gets or sets the area of the DataGridView that needs to be repainted.

ErrorText

現在の DataGridViewRow のエラー メッセージを表す文字列を取得します。Gets a string that represents an error message for the current DataGridViewRow.

Graphics

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

Handled

イベント ハンドラーがイベントを完全に処理したかどうか、またはシステムが独自の処理を継続する必要があるかどうかを示す値を取得または設定します。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.

(継承元 HandledEventArgs)
InheritedRowStyle

行に適用されるセル スタイルを取得します。Gets the cell style applied to the row.

IsFirstDisplayedRow

現在の行が、DataGridView に現在表示されている最初の行かどうかを示す値を取得します。Gets a value indicating whether the current row is the first row currently displayed in the DataGridView.

IsLastVisibleRow

現在の行が DataGridView に表示される最後の行かどうかを示す値を取得します。Gets a value indicating whether the current row is the last visible row in the DataGridView.

PaintParts

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

RowBounds

現在の DataGridViewRow の境界を取得します。Get the bounds of the current DataGridViewRow.

RowIndex

現在の DataGridViewRow のインデックスを取得します。Gets the index of the current DataGridViewRow.

State

現在の DataGridViewRow の状態を取得します。Gets the state of the current DataGridViewRow.

メソッド

DrawFocus(Rectangle, Boolean)

指定した境界の周囲にフォーカスを表す四角形を描画します。Draws the focus rectangle around the specified bounds.

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
PaintCells(Rectangle, DataGridViewPaintParts)

指定した境界内の領域に対応する指定したセルの部分を描画します。Paints the specified cell parts for the area in the specified bounds.

PaintCellsBackground(Rectangle, Boolean)

指定した境界内の領域に対応するセルの背景を描画します。Paints the cell backgrounds for the area in the specified bounds.

PaintCellsContent(Rectangle)

指定した境界内の領域に対応するセルの内容を描画します。Paints the cell contents for the area in the specified bounds.

PaintHeader(Boolean)

現在の DataGridViewRow の行ヘッダー全体を描画します。Paints the entire row header of the current DataGridViewRow.

PaintHeader(DataGridViewPaintParts)

現在の行の行ヘッダーの指定した部分を描画します。Paints the specified parts of the row header of the current row.

ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

適用対象

こちらもご覧ください