DataGridViewRowPrePaintEventArgs Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет данные о событии RowPrePaint.
public ref class DataGridViewRowPrePaintEventArgs : System::ComponentModel::HandledEventArgs
public class DataGridViewRowPrePaintEventArgs : System.ComponentModel.HandledEventArgs
type DataGridViewRowPrePaintEventArgs = class
inherit HandledEventArgs
Public Class DataGridViewRowPrePaintEventArgs
Inherits HandledEventArgs
- Наследование
Примеры
В следующем примере кода показано, как обработать событие для рисования RowPrePaint пользовательского фона для выбранных ячеек. Этот пример кода является частью более крупного примера, приведенного в разделе 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 управления . RowPrePaint позволяет вручную настроить внешний вид строки перед закраской любой из ячеек в строке. Это полезно, если вы хотите настроить строку, например, чтобы создать строку, в которой содержимое одного столбца охватывает несколько столбцов. Используйте свойства в , DataGridViewRowPrePaintEventArgs чтобы получить параметры строки без прямого доступа к строке DataGridViewв .
Конструкторы
Свойства
ClipBounds |
Получает или задает область объекта DataGridView, который должен быть повторно закрашен. |
ErrorText |
Получает строковое значение, которое представляет сообщение об ошибке для текущей ячейки DataGridViewRow. |
Graphics |
Получает объект Graphics, используемый для закрашивания текущей ячейки DataGridViewRow. |
Handled |
Получает или задает значение, показывающее, полностью ли обработчик событий обработал событие или система должна продолжить собственную обработку. (Унаследовано от HandledEventArgs) |
InheritedRowStyle |
Возвращает стиль ячейки, примененный к строке. |
IsFirstDisplayedRow |
Возвращает значение, указывающее, является ли текущая строка первой строкой, отображаемой в настоящее время в DataGridView. |
IsLastVisibleRow |
Возвращает значение, указывающее, является ли текущая строка последней видимой строкой в объекте DataGridView. |
PaintParts |
Части ячейки, которые должны закрашиваться. |
RowBounds |
Получает границы текущей ячейки DataGridViewRow. |
RowIndex |
Получает индекс текущего объекта DataGridViewRow. |
State |
Получает состояние текущей ячейки DataGridViewRow. |
Методы
DrawFocus(Rectangle, Boolean) |
Отрисовывает прямоугольник фокуса вокруг указанных границ. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
PaintCells(Rectangle, DataGridViewPaintParts) |
Закрашивает указанные части ячейки для области в заданных границах. |
PaintCellsBackground(Rectangle, Boolean) |
Закрашивает фон ячейки для области в заданных границах. |
PaintCellsContent(Rectangle) |
Закрашивает содержимое ячейки для области в заданных границах. |
PaintHeader(Boolean) |
Закрашивает весь заголовок текущей строки DataGridViewRow. |
PaintHeader(DataGridViewPaintParts) |
Закрашивает указанные части заголовка текущей строки. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |