DataGridViewRowPrePaintEventArgs Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Innehåller data för RowPrePaint händelsen.
public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
- Arv
Exempel
I följande kodexempel visas hur du RowPrePaint hanterar händelsen för att rita en anpassad bakgrund för markerade celler. Det här kodexemplet är en del av ett större exempel i Så här: Anpassa utseendet på rader i 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
Kommentarer
Händelsen RowPrePaint inträffar innan en rad målas på en DataGridView kontroll. RowPrePaint gör att du kan justera utseendet på raden manuellt innan någon av cellerna i raden målas. Det här är användbart om du vill anpassa raden, till exempel för att skapa en rad där innehållet i en kolumn sträcker sig över flera kolumner. Använd egenskaperna i DataGridViewRowPrePaintEventArgs för att hämta inställningarna för raden utan direkt åtkomst till raden i DataGridView.
Konstruktorer
| Name | Description |
|---|---|
| DataGridViewRowPrePaintEventArgs(DataGridView, Graphics, Rectangle, Rectangle, Int32, DataGridViewElementStates, String, DataGridViewCellStyle, Boolean, Boolean) |
Initierar en ny instans av DataGridViewRowPrePaintEventArgs klassen. |
Egenskaper
| Name | Description |
|---|---|
| ClipBounds |
Hämtar eller anger området för DataGridView det som behöver målas om. |
| ErrorText |
Hämtar en sträng som representerar ett felmeddelande för den aktuella DataGridViewRow. |
| Graphics |
Hämtar den Graphics som används för att måla den aktuella DataGridViewRow. |
| Handled |
Hämtar eller anger ett värde som anger om händelsehanteraren har hanterat händelsen helt eller om systemet ska fortsätta sin egen bearbetning. (Ärvd från HandledEventArgs) |
| InheritedRowStyle |
Hämtar cellformatet som tillämpas på raden. |
| IsFirstDisplayedRow |
Hämtar ett värde som anger om den aktuella raden är den första raden som visas i DataGridView. |
| IsLastVisibleRow |
Hämtar ett värde som anger om den aktuella raden är den sista synliga raden i DataGridView. |
| PaintParts |
Celldelarna som ska målas. |
| RowBounds |
Hämta gränserna för den aktuella DataGridViewRow. |
| RowIndex |
Hämtar indexet för den aktuella DataGridViewRow. |
| State |
Hämtar tillståndet för den aktuella DataGridViewRow. |
Metoder
| Name | Description |
|---|---|
| DrawFocus(Rectangle, Boolean) |
Ritar fokusrektangeln runt de angivna gränserna. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| PaintCells(Rectangle, DataGridViewPaintParts) |
Målar de angivna celldelarna för området inom de angivna gränserna. |
| PaintCellsBackground(Rectangle, Boolean) |
Målar cellbakgrunderna för området inom de angivna gränserna. |
| PaintCellsContent(Rectangle) |
Målar cellinnehållet för området inom de angivna gränserna. |
| PaintHeader(Boolean) |
Målar hela radrubriken för den aktuella DataGridViewRow. |
| PaintHeader(DataGridViewPaintParts) |
Målar de angivna delarna av radrubriken på den aktuella raden. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |