DataGridViewRowPrePaintEventArgs Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje data pro událost RowPrePaint.
public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
- Dědičnost
Příklady
Následující příklad kódu ukazuje, jak zpracovat RowPrePaint událost pro vykreslení vlastního pozadí pro vybrané buňky. Tento příklad kódu je součástí většího příkladu v části Postupy: Přizpůsobení vzhledu řádků v ovládacím prvku model Windows Forms DataGridView.
// 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
Poznámky
Událost RowPrePaint nastane předtím, než je na ovládacím DataGridView prvku namalován řádek. RowPrePaint umožňuje ručně upravit vzhled řádku před namalováním kterékoli z buněk v řádku. To je užitečné, pokud chcete přizpůsobit řádek, například vytvořit řádek, kde obsah jednoho sloupce pokrývá více sloupců. Pomocí vlastností v souboru DataGridViewRowPrePaintEventArgs získáte nastavení řádku bez přímého přístupu k řádku v objektu DataGridView.
Konstruktory
Vlastnosti
ClipBounds |
Získá nebo nastaví oblast DataGridView , která je třeba překreslovat. |
ErrorText |
Získá řetězec, který představuje chybovou zprávu pro aktuální DataGridViewRow. |
Graphics |
Graphics Získá použité k malování aktuální DataGridViewRow. |
Handled |
Získá nebo nastaví hodnotu, která označuje, zda obslužná rutina události zcela zpracovala událost nebo zda systém má pokračovat ve vlastním zpracování. (Zděděno od HandledEventArgs) |
InheritedRowStyle |
Získá styl buňky použitý na řádek. |
IsFirstDisplayedRow |
Získá hodnotu označující, zda je aktuální řádek prvním řádkem aktuálně zobrazeným DataGridViewv souboru . |
IsLastVisibleRow |
Získá hodnotu označující, zda je aktuální řádek posledním viditelným řádkem DataGridViewv . |
PaintParts |
Části buněk, které se mají namalovat. |
RowBounds |
Získejte hranice aktuálního DataGridViewRowsouboru . |
RowIndex |
Získá index aktuálního DataGridViewRowobjektu . |
State |
Získá stav aktuálního DataGridViewRow. |
Metody
DrawFocus(Rectangle, Boolean) |
Nakreslí obdélník fokusu kolem zadaných hranic. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
PaintCells(Rectangle, DataGridViewPaintParts) |
Vykreslí zadané části buňky pro oblast v zadaných mezích. |
PaintCellsBackground(Rectangle, Boolean) |
Vykreslí pozadí buňky pro oblast v určených mezích. |
PaintCellsContent(Rectangle) |
Vykreslí obsah buňky pro oblast v zadaných mezích. |
PaintHeader(Boolean) |
Vykreslí celé záhlaví řádku aktuálního DataGridViewRow. |
PaintHeader(DataGridViewPaintParts) |
Vykreslí zadané části záhlaví řádku aktuálního řádku. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |